Javascript jQuery验证:为什么在我的Rails应用程序中必须单击提交按钮两次?

Javascript jQuery验证:为什么在我的Rails应用程序中必须单击提交按钮两次?,javascript,jquery,ruby-on-rails,jquery-validate,Javascript,Jquery,Ruby On Rails,Jquery Validate,有两个类似的问题,但他们通过ajax提交表单。在我的Rails应用程序中,我不想使用ajax加载并编写以下代码: <% content_for :javascript do %> $("#new_answer_on_<%= _activity_parent_id %>").validate({ onsubmit: function(){ CKEditorUpdate(); return true; }, erro

有两个类似的问题,但他们通过ajax提交表单。在我的Rails应用程序中,我不想使用ajax加载并编写以下代码:

<% content_for :javascript do %>
$("#new_answer_on_<%= _activity_parent_id %>").validate({
    onsubmit: function(){
        CKEditorUpdate();
        return true;
    },  
    errorClass: "my-error-class",
    rules: {
        "answer[content]": {required: true, minlength: 20}
    }
});

function CKEditorUpdate(){
for(instance in CKEDITOR.instances)
   CKEDITOR.instances[instance].updateElement();
}
<% end %>
当textarea的值为空时,但存在可用文本时,上述代码可以警告错误消息:
当我第一次单击submit按钮时,我也会收到警告错误消息,直到我第二次单击它时,它才会将内容提交到服务器。我不知道为什么?我应该如何减少额外的点击?提前谢谢

通过将onsubmit选项设置为函数,很可能破坏了正常的插件行为。只能接受布尔值false作为参数,而不是自定义函数。通过将其设置为false,您将在单击提交按钮时禁用验证触发器,布尔值true不是一个有效值,它已经是默认行为,您也不能将其设置为自定义函数


为CK编辑器更新函数选择适当的回调选项。

JavaScript不关心框架或HTML的呈现方式。当询问JavaScript/jQuery时,请显示浏览器看到的呈现HTML和JavaScript。