我尝试使用静态值示例http://jqueryvalidation.org/max-method/ ..脚本。如何使用最大值但动态?
我尝试使用此脚本,但没有用
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});
$( "#myform" ).validate({
rules: {
field: {
required: true,
max: "#field1" //from field1 dynamic value???
//max: 23 //static value
}
}
});
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://jqueryvalidation.org/files/dist/jquery.validate.min.js"></script>
<script src="http://jqueryvalidation.org/files/dist/additional-methods.min.js"></script>
<form id="myform">
<lable>value1 : </lable>
<input type="text" class="left" id="field1" name="field1"><br>
<lable>no greater than value1 : </lable>
<input type="text" class="left" id="field" name="field">
<br/>
<input type="submit" value="Validate!">
</form>
如何工作?
最佳答案
使用函数返回该字段的值。
$( "#myform" ).validate({
rules: {
field: {
required: true,
max: function() {
return parseInt($('#field1').val());
}
}
}
});
请记住将值括在
parseInt
中,否则该数字可以作为字符串求值。工作演示:http://jsfiddle.net/dq7wf3qj/