在jquery.validate.js methods增添依赖关系的验证方法
在jquery.validate.js 的methods: 中添加验证方法:
当input A有内容时 input B必须也要输入内容,那么可以加上验证JS,然后在input标签中调用 matchIntTo="#inputA"
在jquery.validate.js 的methods: 开始处添加下列代码:
// add by mengx on 2014.11.11
matchIntTo: function( value, element, param ) {
// bind to the blur event of the target in order to revalidate whenever the target field is updated
// TODO find a way to bind the event just once, avoiding the unbind-rebind overhead
var target = $(param);
if ( this.settings.onfocusout ) {
target.unbind(".validate-matchIntTo").bind("blur.validate-matchIntTo", function() {
if(target.val()=="") target.val(0);
$(element).valid();
});
}
var tval = target.val();
//如果数字>0则必须输入内容,如果数字=0则不需要输入内容
return (tval!="" && value.length>0) || (value=="" && (tval=="" || tval==0));
},
matchTextTo: function( value, element, param ) {
// bind to the blur event of the target in order to revalidate whenever the target field is updated
// TODO find a way to bind the event just once, avoiding the unbind-rebind overhead
var target = $(param);
if ( this.settings.onfocusout ) {
target.unbind(".validate-matchTextTo").bind("blur.validate-matchTextTo", function() {
$(element).valid();
});
}
var tval = target.val();
return (tval!="" && value.length>0) || (tval=="" && value.length==0)
},
使用举例:
<p class="nowrap">
<label>抓获逃犯(名):</label>
<input id="inputA" name="instance.taofanNum" value="${instance.taofanNum}" type="text" size="30" class="digits" />
</p>
<p class="nowrap">
<label>抓获逃犯描述:</label>
<input matchIntTo="#inputA" name="instance.taofanComment" rows="5" cols="75" />
</p>