如何使用 JavaScript 在 Firefox 中使所需的无线电输入可选
How do I make a required radio input optional in Firefox using JavaScript?
我正在尝试在我的表单中使用HTML5约束验证来帮助用户在提交之前在客户端发现错误(显然也进行服务器端验证)。
我遇到一种情况,我需要根据用户在其他字段中的选择有条件地将某些字段设置为必填或可选。但是,在 Firefox 中,在较早的某个时间点需要无线电输入后,我无法将无线电输入设置为可选。我已经尝试删除必需的属性并将 this.willValidate 设置为这些无线电输入的 false,但 Firefox 似乎仍然认为无论我做什么,它们都是必需的。
下面是一个演示:http://jsfiddle.net/rrud/fUcUn/
有没有人对我可以在 JavaScript 中尝试的其他东西有想法,告诉 Firefox 在需要这些无线电时将它们设置为可选?
我的例子在Chrome和Opera中效果很好,在Firefox中,所有非无线电输入的行为都符合预期......所以也许这只是火狐中的一个错误?我在Win7上使用Firefox 13.0。
使用 jQuery 的 prop 方法: $.fn.prop
-> $('input').prop('required', true|false);
http://jsfiddle.net/trixta/fUcUn/12/
只需将其添加到您的代码中
this.checked = false;
您的代码应如下所示
$(function() {
$("#require").click(function() {
$("input, textarea, select").attr('required', 'required');
});
$("#unrequire").click(function() {
$("input, textarea, select").removeAttr('required').each(function() {
this.willValidate = false;
this.checked = false;
});
});
});
检查这个小提琴 http://jsfiddle.net/kabichill/ktfV6/
相关文章:
- 无线电输入更改的jQuery事件未启动
- 通过单击链接(兄弟姐妹?)从无线电输入中获取id
- 角度双向绑定无线电输入
- 检查了多个无线电输入
- 如何更改无线电输入字段中文本的颜色
- 使用 JavaScript 和无线电输入更改 HTML 中的背景颜色有什么错误
- 单击时更改无线电输入值(实际上将其更改回来)
- 为什么我的无线电输入值是 NaN
- 如何为每个无线电输入组分配不同的名称
- 如何使用 JavaScript 在 Firefox 中使所需的无线电输入可选
- 将对象的键绑定到 AngularJS 中的无线电输入值
- 我的 JavaScript 无法正确检查表单的无线电输入
- 取消选择较低的无线电输入
- 根据选中的无线电输入更改表单操作和文本输入名称
- 环通并验证多个无线电输入
- 无线电输入点击功能不会运行
- 如何在页面刷新时保留无线电输入状态
- 根据无线电输入条件禁用和启用按钮提交
- 反应无线电输入不检查
- 我应该如何根据所选的无线电输入重新组织查询的控制流