【发布时间】:2015-04-15 19:29:49
【问题描述】:
我第一次使用 jquery 验证插件...它在我的表单中的某些输入上正常工作(在下面进行了简化),但在其他输入上却没有。知道为什么吗?在下面的示例中,验证适用于第一个输入#planname,但不适用于#q8b。
<form id="form">
<fieldset>
<legend>Plan Name</legend>
<span><input id="planname" type="text" name="planname" value="<?php echo $_SESSION['planname']; ?>" required class="required" /></span>
</fieldset>
<fieldset class="childwrap" id="q8bwrap">
<legend>Do you have an outstanding loan?</legend>
<input id="q8b" type="text" name="q8b" value="<?php if ($_SESSION['q8a'] == "Yes") {echo $_SESSION['q8b']; } ?>"/>%<br/>
</fieldset>
</form>
包含在页脚中:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://cdn.jsdelivr.net/jquery.validation/1.13.1/jquery.validate.min.js"></script>
<script src="http://cdn.jsdelivr.net/jquery.validation/1.13.1/additional-methods.min.js"></script>
此脚本有效:
<script>
// just for the demos, avoids form submit
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
$( "#form" ).validate({
rules: {
planname: {
required: true,
max: 23
}
}
});
</script>
这个没有:
<script>
// just for the demos, avoids form submit
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
$( "#form" ).validate({
rules: {
q8b: {
required: true,
max: 23
}
}
});
</script>
这只是为了测试目的,试图找出它不起作用的原因;在最终产品中,q8b 应该不是必需的,但最大值应为 23。
【问题讨论】:
标签: jquery forms jquery-validate