0

JavaScriptで作成したテーブルがあります。各行にチェックボックスを追加しています。チェックボックスをオンにすると、警告メッセージが表示される必要があります。javascript で動的チェックボックスに oncheck 属性を追加する方法。

var tblRow = "<tr><td Style='display: none'>" + data.IxDetails
        "</td><td>" + data.Name +
             "</td><td>" + GroupTable +
              "</td><td>" + (data.AllowFileAttachment == true ? "Yes" :"No" )  +
        "</td><td>" + (data.SetToInActive == true ? "INACTIVE" : "ACTIVE" ) +
              "</td><td><input type = 'checkbox' id='" +
       data.Index + "' name='selectedData'  value='123' "+
        "</td><td><input type = 'checkbox' id='dl" +
       data.Index + "' name='selectedData'  value='123' >" +
        "</td></tr>";
        $('#DataTable> tbody:last').append(tblRow);
4

5 に答える 5

2

は動的に追加されるため、イベント デリゲーションを使用してイベント ハンドラーを登録するcheckbox必要があります。

// New way (jQuery 1.7+) - .on(events, selector, handler)
$('#DataTable').on('click', ':checkbox', function(event) {
    event.preventDefault();
    alert('testlink'); 
});

checkboxこれにより、要素内の任意のイベントにアタッチされ、要素ツリー#DataTable全体をチェックする必要がなくなり、document効率が向上します。

シンプルなフィドルのデモ

于 2013-06-27T07:41:02.107 に答える
1

動的に追加されたコントロールのより良い使用

<input type = 'checkbox' id='dl" +
       data.Index + "' name='selectedData' href="javascript:void(0);" onclick="dynaclick('id1')"  value='123' >

そしてjavascript関数は

function dynaclick(id){
alert('checkbox with'+id+' is clicked');

}
于 2013-06-27T08:12:15.923 に答える