gpt4 book ai didi

大表单上的 jQuery 验证

转载 作者:行者123 更新时间:2023-12-01 08:06:32 25 4
gpt4 key购买 nike

我正在创建一个 Web 应用程序,其中包含用户提交到服务器的一个大型表单。

这个表单有标准的 jQuery 验证并且工作得很好。 (http://bassistance.de/jquery-plugins/jquery-plugin-validation/)

但是,表单中间的部分需要通过 ajax 调用提交。假设表单的这一部分有一个简单的“添加”按钮——按下添加按钮时是否可以仅验证表单的这一部分?

并在正常提交时验证表单的其余部分。我查看了 jQuery Validation api,但没有看到任何内容。

我想我可以手动调用:

$('#commentForm').validate({
rules : {
cname: {
required: true,
minlength: 2
}
}
}).element("#cname");

不幸的是,这增加了在按下主提交按钮时进行检查的验证。

对此事的任何帮助或建议将不胜感激:)

最佳答案

这可能对你有用。 <强> Link to jsfiddle

HTML

  <form id="commentForm" method="post" action="index.php" style="font-family: Georgia">
<fieldset>
<legend>The main form</legend>
<label for="text1">Text 1</label>
<input type="text" id="text1" name="text1" />
<br /><br />
<fieldset id="opt">
<legend>This section is only rquired when "Add" button is clicked</legend>
<label for="text2">Text 2</label>
<input type="text" id="text2" name="text2" />
<br /><br />
<button id="add">Add</button>

</fieldset>
<br />
<label for="text4">Text 4</label>

<input type="text" id="text4" name="text4" />
<br /><br />
<input type="submit" id="submit" value="Post Main Form" />
</fieldset>
</form>

JavaScript

        $('#commentForm').validate({
//ignore everything in the sub-form
ignore: '#opt *',
rules: {
text1: {
required: true,
minlength: 2
},
text4: {
required: true,
minlength: 2
}
}
});

$('#add').click(function () {

var txt = $('#text2');

//here you add validation rules for sub-form elements
txt.rules('add', {
required: true
});

//here you trigger the validation for elements in subform
txt.valid();

/* here you do your ajax stuff */

return false;
});

这种方法使用 jQuery 验证器插件的 ignore 选项以及 .valid() 方法来手动触发元素验证。我希望它有帮助。

此示例是使用 jQuery 验证插件 - v1.10.0 进行测试的

关于大表单上的 jQuery 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16251787/

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