我有以下脚本,通过测验使用jquery.validate.js验证页面并完美运行。我希望将所需字段的错误消息放入名为errormessage的div中。 jQuery验证通常会返回一条消息“此字段是必需的”。
这是脚本
<script type="text/javascript">
var curPage=1;
function NextPage() {
if (curPage < <?= $num; ?>) {
var group = "#page_" + curPage.toString();
var isValid =true;
$(group).find(':input').each(function (i, item) {
if (!$(item).valid())
isValid = false;
});
if( !isValid){ alert("PLEASE MAKE A SELECTION"); }
else{
$("#page_" + curPage.toString()).hide(); //hide current page div
curPage++; //increment curpage
$("#page_" + curPage.toString()).show(); //show new current page div
}
}
}
function PrevPage() {
if (curPage > 1) {
$("#page_" + curPage.toString()).hide(); //show new current page div
curPage--; //increment curpage
$("#page_" + curPage.toString()).show(); //hide current page div
}
}
function InitializePage() {
$(".wizardPage").hide();
$("#page_" + curPage.toString()).show();
$("#surveyForm").validate({onsubmit: false});
}
$(document).ready(InitializePage
);
</script>
答案 0 :(得分:1)
尝试设置错误容器元素,如下所述:
http://mitchlabrador.com/2010/11/05/how-to-change-the-way-jquery-validate-handles-error-messages/
答案 1 :(得分:0)
切换此行 - $("#surveyForm").validate({onsubmit: false});
以取消以下内容 -
$("#surveyForm").validate({
rules: {
xyz: {
required: true
}
},
messages: {
xyz: {
required: $('div#errormessage').append("xyz is a required field!");
}
}
}, onsubmit: false)
它会检查xyz
是否填满。如果没有,则会将xyz is a required field!
放入div
id
errormessage
。
有关规则的更多详细信息,请查看this page。向下滚动,直到达到“规则”。
上述代码通过为每个字段添加规则,允许您为每个错误消息指定不同的位置。蜘蛛答案中的博客文章包含一种更简单的做事方式,如果您不需要这种可定制性,那么它是首选。