j查询动态验证单选按钮选择
jQuery Dynamic Validations on radio button select
我有一个表单。
<form>
<fieldset>
<div>
<label>title</label>
<input id="title" name="title" type="text">
</div>
<div>
<label>Type</label>
<input name="type" id="1" value="1" checked="checked" type="radio">1
<input name="type" id="2" value="2" type="radio">2
</div>
</div>
<div>
<label for="3">3</label>
<input id="3" name="3" placeholder="3">
</div>
<div class="2_details" style="display:none;">
<input id="4" name="4" placeholder="4">
</div>
</fieldset>
</form>
它有2个单选按钮。 1
和2
.当前具有类 2_details
的div 处于隐藏状态。只有单击单选按钮2
才会激活,否则会被隐藏。
以下是对此的jquery:-
$('form').change(function (event) {
var value = $('input[name=type]:checked', 'form').val();
if (value == '2'){
$('.2_details').show()
}
else{
$('.2_details').hide()
}
});
现在我想应用 jquery 验证。这种情况是这样的,如果选中单选按钮2
,则 3
的值应大于 4
的值,否则接受 3
的任何值。
此外,如果选中2
,则在类2_details
上应用验证,否则不会对2_details
应用验证。
这是我的验证码:-
$.validator.addMethod("3greater4", function(value, element) {
return $('#4').val() > $('#3').val()
}, "* 3 should be greater than or equal to 4.");
$('form').validate({
rules: {
title: {
required: true,
minlength: 10
},
3: {
required: true,
number: true,,
3greater4 : true
},
4: {
required: true, // only if radio 2 is checked.
number: true,,
3greater4 : false
}
}
});
不需要自定义规则,您可以使用
jQuery(function($) {
$('input[name="type"]').change(function(event) {
$('.2_details').toggle(this.value == 2)
});
$('form').validate({
rules: {
title: {
required: true,
minlength: 10
},
3: {
required: true,
number: true
},
4: {
required: true,
number: true,
min: function() {
return +$('#3').val() || 0;
}
}
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.13.1/jquery.validate.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.13.1/additional-methods.js"></script>
<form>
<fieldset>
<div>
<label>title</label>
<input id="title" name="title" type="text">
</div>
<div>
<label>Type</label>
<input name="type" id="1" value="1" checked="checked" type="radio">1
<input name="type" id="2" value="2" type="radio">2
</div>
<div>
<label for="3">3</label>
<input id="3" name="3" placeholder="3">
</div>
<div class="2_details" style="display:none;">
<input id="4" name="4" placeholder="4">
</div>
</fieldset>
<input type="submit" value="save" />
</form>
相关文章:
- 根据页面加载时的单选按钮选择显示某些字段
- Ng点击记住单选按钮选择
- Angular未更新单选按钮选择
- 阅读JS中的单选按钮选择
- JQuery IE11 单选按钮选择器
- 确认单选按钮选择
- 贝宝表单问题的单选按钮选择
- 使用javascript在单选按钮选择上加载URL
- 显示基于多个单选按钮选择的图像
- 基于输入值的单选按钮选择
- 将域类id返回到由单选按钮选择的控制器
- 无法更改单选按钮选择 - KnockoutJS
- 单选按钮选择列表框更改并将 NULL 值传递给每个列表框
- 用户在Javascript的帮助下,仅通过单选按钮选择一个付款方式(信用卡)
- 基于多个单选按钮选择显示或隐藏元素
- 如何根据单选按钮选择在表中切换多个输入
- 无法更改单选按钮选择
- 提交页面而不为所需单选按钮选择值
- 使用基于单选按钮选择的 jquery 将表格单元格添加到行尾
- j查询动态验证单选按钮选择