我喜欢jQuery.validate.js
插件,但是在我正在处理的新表单上实现它时,我无法获得valid
class
和label
删除内容时,请从input
元素中删除。
我将onkeyup
设置为false
,success
函数将valid
类添加到错误标签,字段为required
:
<script>
$(function() {
$('#test').validate({
rules: {
firstname: 'required'
},
messages: {
firstname: 'Please enter a first name'
},
success: function(label) {
label.addClass('valid').text('Yey!');
},
onkeyup: false
});
});
</script>
<form id="test">
<label>Name<input type="text" id="firstname" name="firstname" /></label>
<p><input type="submit" value="Submit" /></p>
</form>
以下是我想改变的情况:
我希望更改第4步以便不再显示 - 要么显示Field required
的错误消息,要么根本没有错误(因为它没有任何内容)。< / p>
奇怪的是,如果将onkeyup
设置为true
,我可以使用该功能,但我只是不希望在输入时进行错误检查功能,对我认为的用户来说有点太多了。
非常感谢任何帮助,我在其他帖子中找不到任何解决方案 - 抱歉,如果我错过了什么。
干杯!
答案 0 :(得分:0)
为了解决您的问题,我使用了errorPlacement
选项,每次需要输入错误消息时都会触发该选项。它超越了你的#Yay!&#34;每当错误消息需要返回时都会显示消息。
(请注意代码如何放在这个jsFiddle中。)
$(function () {
$('#test').validate({
rules: {
firstname: 'required'
},
messages: {
firstname: 'Please enter a first name'
},
success: function (label) {
label.addClass('valid').text('Yey!');
},
errorPlacement: function (error, element) {
error.insertAfter(element);
},
onkeyup: false
});
});
&#34;奇怪的是,如果将onkeyup设置为true,我可以使用该功能&#34;
值得注意的事情:
onkeyup
是默认选项之一,设置为false
或完全省略。将其设置为true
对此插件无效。此onkeyup
选项后面有一个函数,将其设置为false
是禁用此函数的有效方法。但是,永远不应该将其设置为true
。省略onkeyup
选项只会允许发生默认的onkeyup
行为。