我有一个表格,我正在使用jquery/mail黑猩猩.
如果选中单选按钮,表单的一部分将被隐藏并显示(使用Jquery Slide()).
每件事都应该很有效.
问题:
表单集用于验证隐藏的部分.但是,有些用户不会总是检查单选按钮,这意味着表单会出现故障,因为隐藏的表单不会被验证,因为它们没有填写.
有没有人在这方面有任何工作?
这是代码.
触发器(显示表单的其余部分.)
<div id="accordionup">
<li>
<input name="group[5]" type="radio" id="mce-group-5-1" value="32"checked="checked" />
<label for="mce-group-5-1">No
</li>
</div>
Run Code Online (Sandbox Code Playgroud)
当用户选择单选按钮时,下面的表单向下滑动.我需要做的就是添加class="required"一对(这也是关键)并非所有向下滑动的字段.所以基本上是某种条件/ if语句.
<div id="accordion">
<div class="mc-address-group">
<li class="statefield">
<label for="mce-MMERGE1-state">State:</label>
<input type="text" value="" maxlength="20" name="MMERGE1[state]" id="mce-MMERGE1-state" class="" />
</li>
<li class="zipfield">
<label for="mce-MMERGE1-zip">Zip Code:</label>
<input type="text" value="" maxlength="10" name="MMERGE1[zip]" id="mce-MMERGE1-zip" class="" />
</li>
<li class="countryfield">
</div>
Run Code Online (Sandbox Code Playgroud)
我正在使用它来滑下来
<script>
$('#accordion').click(function() {
$('#slider').slideDown('slow', function() {
});
});
$('#accordionup').click(function() {
$('#slider').slideUp('slow', function() {
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
谢谢.
试试这个:
$("#mce-group-5-1").change(function() {
$("#mce-MMERGE1-state").toggleClass('required');
});
Run Code Online (Sandbox Code Playgroud)
您可以在选择器中添加更多ID,以逗号分隔..toggleClass()将检查所选元素是否具有指定的类.如果它有,它将删除它,如果没有,它将添加它.
您似乎正在使用jQuery Validate插件,因此作为替代方案,您可以动态添加和删除规则,.rules()如下所示:
$("#mce-group-5-1").change(function() {
if ($(this).is(":checked")) {
$("#mce-MMERGE1-state").rules("add", "required");
} else {
$("#mce-MMERGE1-state").rules("remove"); // remove all validation rules
}
});
Run Code Online (Sandbox Code Playgroud)
查看JSFiddle上的完整演示(使用复选框而不是单选按钮).
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
1115 次 |
| 最近记录: |