如何在 jQuery 中克隆单选按钮并修改选中状态?

Har*_*hna 4 html css jquery

我已经克隆了单选列表,同时我选中了单选按钮并单击了“添加更多”按钮,然后添加了新的克隆单选列表,但添加了单选列表,单选按钮未被用户修改/检查,单选按钮的状态是固定的。这是我的 html 代码

<div class="Box">
   <div class="form-group">
        <label ><span>Note Type:</span></label>
         <div class="radio-list">                
                <label><input type="radio" name="optionsRadios" id="optionsRadios1" value="Subjective"> Subjective</label>
                <label><input type="radio" name="optionsRadios" id="optionsRadios2" value="Objective" > Objective</label>
         </div>
         <div class="abc">
            <button type="button" id="num">Add More</button>
         </div>
   </div>  
<div>
Run Code Online (Sandbox Code Playgroud)

她是js代码。

   $("#num").click(function () {
       var p = $('.form-group').length;
       var cloned = $(".form-group:first").clone(true)
                .find('input:radio').attr('name', 'optionsRadios' + ++p).end()
                .appendTo('.Box');
    });
Run Code Online (Sandbox Code Playgroud)

Reg*_*ent 5

  • 你的代码应该用document.ready.
  • 你应该改变nameinput在克隆小号div到另一个独特的一个(使单选按钮的单独组)。
  • 你有</span>没有<span>
  • 我搬到<div class="abc">了的<div class="form-group">防止复制按钮。

它应该类似于这个 fiddle

var cloneId = 0;

$(document).ready(function()
{
    $("#num").click(function()
    {
        var clone = $(".form-group:first").clone(true);
        clone.find("input").prop("name", "optionsRadios" + cloneId);
        cloneId++;
        clone.appendTo(".row");
    });
});
Run Code Online (Sandbox Code Playgroud)