通过JavaScript更新名称属性时,防止单选按钮丢失检查状态

时间:2012-03-27 23:00:12

标签: javascript jquery html

我有一组结构化和层次化的HTML元素。添加或删除元素时,我会更新其兄弟元素,以便正确的序列顺序反映在元素属性中。此操作的一部分涉及更新单选按钮上的名称属性。

由于单选按钮按名称分组,更改名称会导致单选按钮的“已检查”状态丢失。

有关我遇到的问题的示例,请查看http://jsfiddle.net/UNQjU/12/ - 检查单选按钮然后执行代码,您将看到该状态丢失。我正在寻找一种解决方法,允许我在操作name属性时保持每个单选按钮的选中状态。

1 个答案:

答案 0 :(得分:0)

此代码在JS Fiddle示例中运行良好。如果您将HTML更改为:

<input type="radio" name="group1" checked="checked"> Option 1 <br/>
<input type="radio" name="group1"> Option 2 <br/>
<input type="radio" name="group1"> Option 3 <br/>

然后'运行'小提琴,复选框名称变更,复选框保持选中状态。

不要忘记标签

<label for="group1_a">
    <input type="radio" id="group1_a" name="group1" checked="checked">
    Option 1</label><br/>
<label for="group1_b">
    <input type="radio" id="group1_b" name="group1">
    Option 2</label><br/>
<label for="group1_c">
    <input type="radio" id="group1_c" name="group1">
    Option 3</label><br/>