表单w /单选按钮和具有相同名称的复选框的最佳实践

时间:2013-12-23 13:26:49

标签: html forms checkbox radio-button

我有一个表单,其中包含一个单选按钮列表和一个表示特殊“按钮”的复选框。所有表单元素都具有相同的名称:

<input type="checkbox" name="channel" id="prv" value="ch1">
<input type="radio" name="channel" value="ch2">
<input type="radio" name="channel" value="ch3">
<input type="radio" name="channel" value="ch4">

我的想法是,一旦勾选复选框,所有其他单选按钮都被禁用(这对jQuery非常有效)。如果未选中该复选框,则用户可以使用单选按钮选择某个频道。

但是当我提交表单时,它根本不起作用。

$('#prv').change(function () {
        if (this.checked) {
            $(".fc_exp input").attr('disabled',true); <--RADIO BUTTONS
            $(".fc_exp input").removeAttr('checked'); <--RADIO BUTTONS
        } else {
            $(".fc_exp input").attr('disabled',false); <--RADIO BUTTONS
            $('.fc_exp #ch1, .fc_exp label[for="#ch1"]').prop('checked',true); <--DEFAULT RADIO BUTTON: CHECKED
        }
    })

现在我的问题是:这有什么最好的做法吗?

非常感谢圣诞快乐!

1 个答案:

答案 0 :(得分:1)

我建议使用四个单选按钮 - 第一个选项“无频道”或此处需要的任何选项 - 而不是复选框。 如果你真的需要复选框和无线电 - 复选框应该在表单中以不同的方式命名 - 但这将需要服务器端的其他代码来正确处理它。

相关问题