onkeyup和onfocusout在jQuery验证中不起作用
我使用jQuery验证插件进行验证。我必须在表单上进行实时验证。 例如,如果需要一个名字,那么用户应该第一次收到所需的消息,并在开始在文本框中键入时发出 为了实现这一功能,我正在使用插件的onkeyup和onfocusout在jQuery验证中不起作用,jquery,coffeescript,jquery-validate,Jquery,Coffeescript,Jquery Validate,我使用jQuery验证插件进行验证。我必须在表单上进行实时验证。 例如,如果需要一个名字,那么用户应该第一次收到所需的消息,并在开始在文本框中键入时发出 为了实现这一功能,我正在使用插件的onkeyup和onfocusout选项。 为此,我指的是谁也有同样的问题 这是我的咖啡脚本表单验证代码 defaultPageForm: (self)-> form = $("#PageForm") if form.length > 0 form.find(
onkeyup
和onfocusout
选项。
为此,我指的是谁也有同样的问题
这是我的咖啡脚本表单验证代码
defaultPageForm: (self)->
form = $("#PageForm")
if form.length > 0
form.find('textarea').on 'click', -> $(@).valid()
form.find('input').on 'click', -> $(@).valid()
form.validate
ignore: ".ignore"
rules:
"view[name]":
required: true
NameWordCount: [3]
"view[comment]":
required: true
CommentWordCount: [5]
accept_terms: "required"
messages:
"view[comment]": "Please add comment"
errorElement: "span"
errorClass: "error_msg wide "
errorPlacement: (error, element) ->
element.siblings(".view_form_error_msg").remove()
error.appendTo element.closest(".controls")
return
###### Real time validation code #############
onkeyup: (element) ->
$(element).valid()
return
onfocusout: (element) ->
$(element).valid()
return
submitHandler: (form) ->
self._setupData()
self._submitForm(form)
off
return
但它并不好用。例如,出于测试目的,我在onkeyup
下添加了警报消息,但没有弹出任何内容,也没有应用实时验证
有什么我遗漏的吗。
这是我的html
<input type="text" value="as as" size="50" placeholder="Full Name" name="view[name]" id="customerName" class="string required wide" style="font-size: 20.4572px; line-height: 49px;">
因此,我如何解决这个问题。您永远不会在
.validate()
方法中使用.valid()
方法。请参阅onkeyup
和onfocusout
的源代码以了解如何完成
使用this.element(element)
代替$(element).valid()
要超越onkeyup
和onfocusout
的默认功能(“惰性验证”),请改用“渴望”验证
$('#myform').validate({
onkeyup: function(element) {
this.element(element); // <- "eager validation"
},
onfocusout: function(element) {
this.element(element); // <- "eager validation"
}
....
$('#myform')。验证({
onkeyup:函数(元素){
this.element(element);//什么是“工作不正常”?默认情况下,onkeyup
和onfocusout
选项已经启用,不需要在中指定
除非你出于某种原因想超越它们。我已经更新了我的帖子,需要第一次显示消息。你不会在.validate()
方法中使用.valid()
方法。请参阅onkeyup
和onfocusout
的源代码。使用此元素(元素)
而不是$(element).valid()
。同样,没有人知道“工作不正常”是什么意思。请相应地编辑您的OP。@Sparky我已经更新了我的帖子