Name: -6ren">
gpt4 book ai didi

javascript - jQuery 验证插件 addMethod

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:28:38 24 4
gpt4 key购买 nike

我正在尝试使用 jQuery 验证插件通过使用自定义 add.method 来验证一些表单字段,我需要一些帮助。这是我的 html 表单。

<form method="post" action="<?=$PHP_SELF?>" name="sf" id="sf">

<p>
<label for="name">Name:</label>
<input type="text" name="name" id="name" /><br />
</p>

<p>
<label for="email">Email:</label>
<input type="text" name="email" id="email" /><br />
</p>

</form>

基本上我正在尝试一个非常基本的规则来检查名称字段是否不为空。我正在尝试关注,请告诉我是否正确?

<script type="text/javascript">
$(document).ready(function() {
$.validator.addMethod("name",function(value,element){
return this.optional(element) || (i.test(value) > 0);
},"Name is required");
$("#sf").validate({
rules: {
name: true,
},
});
});
</script>

我想在表单中的名称字段前面显示名称错误消息。我该怎么做?感谢您的帮助。

最佳答案

如果你只是想让一个表单元素成为必需的,你应该在元素上添加一个 required 类:

<input type="text" name="name"  id="name" class="required" />

这将自动被验证选中。

如果您这样做只是为了弄清楚如何添加自定义规则,我建议不要使用名为“名称”的规则(我在一个简单的示例中遇到了问题)。以下是如何添加自定义规则以确保“名称”仅包含字符:

$.validator.addMethod("customname", function(value, element) {
var i = /^[A-Za-z]+$/;
return this.optional(element) || (i.test(value) > 0);
}, "Name is required");

$("#sf").validate({
rules: {
name: {
customname: true
}
}
});

请注意,在 rules 对象中,您必须指定另一个对象 (name) 来定义该元素的规则。

至于将错误放在特定位置,请查看 errorPlacement 选项:

errorPlacement: function(error, element) {
element.closest("p").prepend(error);
}

将错误放在标签和输入之间。

这是两个实际操作的示例:http://jsfiddle.net/andrewwhitaker/7xD2H/

关于javascript - jQuery 验证插件 addMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4845791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com