1

我使用以下代码生成了一些动态复选框。这是第一次工作并将复选框 chk2 添加到页面,然后在 $('#newLink').click 的触发器之后不起作用。请帮我解决一下这个。

 <div id="chkBoxesDiv">
     <input type="checkbox" id="chk1" ></input>
     <input id="answerText" type="text" size="30" ></input>&nbsp;
     <input type="button" value="add new" id="newLink"/>
 </div>

$(document).ready(function(){

$('#newLink').click(function (event){
    var i = 0;
    //To count the children
    $("#chkBoxesDiv").children().each(function(){
        var child = $(this);
        if(child.is(":checkbox")){
            i++;
        }
     });

     //prevent action
     event.preventDefault();

     //get textbox value to fill checkbox
     var text = $("#answerText").val();
     alert(i);

     //if text not empty do stuff
     if(text != ""){
     //add label
         $("#chk"+i).after("<label for=\"chk"+i+"\" id=\"lblchk"+i+"\">"+text+"</label>");


         $("#newLink").remove();
         $("#answerText").remove();
         $("#lblchk1").after("<br /><input type=\"checkbox\" id=\"chk"+(1+i)+"\" ></input><input type=\"text\" id=\"answerText\" size=\"30\" ></input>&nbsp;<input type=\"button\" value=\"add new\" id=\"newLink\"/>");
     }
    });
});
4

1 回答 1

2

使用.live jquery 命令。

当您将元素添加到页面上时,它们不会自动具有点击事件。你需要分配他们

于 2010-06-07T05:10:42.713 回答