Firebug向我展示了以下内容:
从以下Validator初始化:
$("#surveyForm").validate({ errorPlacement: function(error,element) { if ( element.is(":radio") ) { error.appendTo ( '#' + element.attr('name') + '_multiError' ); } else if ( element.is(":checkBox") ) { error.appendTo ( '#' + element.attr('name') + '_multiError' ); } else { error.appendTo( element.parent() ); } },rules: { ans_23: { depends: function(element) { return $("#ans_22:checked") } } },debug: true });
该规则基于规则here下的第二个示例.
引用的HTML看起来像这样
<td class='two_columns'> <label> <input type='radio' name='rad_22' id='ans_22' class='required' value='Yes' /> Other </label> <input type='text' name='ans_23' id='ans_23' value='' class='' /> </td>
任何人都知道为什么depends方法是未定义的?
脚注:我也尝试使用规则添加方法(见下文).当调用validate()并且ans_23没有获得“必需”类时,该表单已经过验证并且没有出错.
$("#surveyForm").rules("add",{ ans_23: { required: "#ans_22:checked" } });