gpt4 book ai didi

jquery - 使用 JQuery Validate Plugin 验证具有相同名称的多个表单字段

转载 作者:行者123 更新时间:2023-12-03 21:27:08 25 4
gpt4 key购买 nike

我有一个动态生成的表单,其中的输入字段具有相同的名称(例如:“ map ”)。我无法选择更改字段名称或生成唯一的字段名称,因为表单处理程序代码 (Perl/CGI) 旨在处理输入值数组(在本例中为 @map)。

如何使用 JQuery Validate Plugin在这种情况下验证表单?具体来说,我希望提交的数组中只有一个元素具有某个固定值。我当前正在使用一个自定义事件处理程序,它使用 serializeArray() 创建一个 JSON 对象,然后遍历它以确保满足条件。但由于我在应用程序的其余部分中使用了验证插件,我想知道是否也可以在这里使用相同的插件来处理这种情况。

感谢您的关注。

最佳答案

您无需更改源文件 jquery.validation,只需覆盖需要仅在需要它的页面中编辑的函数即可。

一个例子是:

$.validator.prototype.checkForm = function() {
//overriden in a specific page
this.prepareForm();
for (var i = 0, elements = (this.currentElements = this.elements()); elements[i]; i++) {
if (this.findByName(elements[i].name).length !== undefined && this.findByName(elements[i].name).length > 1) {
for (var cnt = 0; cnt < this.findByName(elements[i].name).length; cnt++) {
this.check(this.findByName(elements[i].name)[cnt]);
}
} else {
this.check(elements[i]);
}
}
return this.valid();
};

这可能不是最好的解决方案,但至少它避免了编辑源文件,这些文件可以在新版本发布时替换。您的重写函数可能会或可能不会中断。

关于jquery - 使用 JQuery Validate Plugin 验证具有相同名称的多个表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/931687/

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