有一个基于无线电隐藏/可见的字段。
所以在加载页面时,我们会根据无线电值隐藏它们
$(document).ready(function() {
if(edit) {
populateData();
}
$(radio).change(function(){
//here also we show hide text box based on radio value
})
function PopulateData() {
//This does select radio and based on same show / hide text field
}
$("myForm").validate(); // attaching validate . At this point field could be hidden or visible
$(savebutton).click(function(){
/*This does not validate text
field (visibleBasedOnRadio) which was hidden and made visible by either of above */
if( $("myForm").valid() == false) {
return false;
}
});
});
<form id="myForm">
<radio>
<option 1>
<option 2>
</radio>
<input type="text" id="visibleBasedOnRadio" class="required" style="display:none"/>
</form>
答案 0 :(得分:0)
我不知道您使用什么框架用于表示逻辑。我会尝试尽可能地通用。
让我们在表单中添加两个变量。
valueOfTheVisibleField - 此字段包含输入文本框的值,一旦选中单选按钮,该文本框就会显示。
<form>
<input type="radio" name="radioButtonValue" value="option1"> Option 1<br> //This is checked.
<input type="radio" name="radioButtonValue" value="option2"> Option 2<br>
<input type="text" id="visibleBasedOnRadio" class="required" name="valueOfTheVisibleField" style="display:none"/>
</form>
现在在验证中首先检查单选按钮的值。仅当其值为option2时,即显示必填字段时...才检查文本框值是否存在。如果没有做任何与valueOfTheVisibleField字段相关的事情,因为它隐藏了。