jQuery 1.7xでは、いくつかの列を持つ動的に生成されたタブ内にテーブル全体を作成しています。クリック可能なSPANを含むセルをテーブルに追加する方法
ダイナミックコンテンツの把握しにくいクリックイベントを除いて、すべてが素晴らしいと思われます。私はちょうど.onメソッドを使ってリスト項目に対してこれを行う方法を学びましたが、私のテーブルではうまくいかないようです。 (重要な場合、各jQueryタブは特定の年に動的に追加され、そのタブの表にはその年に開催されたすべての会議が含まれます)
何が欠けていますか?私はまた、私は、これはその場でテーブルを作成するための最良の方法であることを知りませんが、私は理解することが最も明確だったので、それに何か提案http://jsfiddle.net/KYkRZ/
<table>
<tr><td><span class="ClickableClass">Is Clickable</span></td><td>Regular TD</td></tr>
</table>
<div id='myTab'></div>
$('.ClickableClass').on('click',function() {alert("ClickableClass click event") });
$('#myTab').append('<table border></table>');
var myTable = $('#myTab').children();
for(i=0;i<3;i++){
var mySpan = $('<span></span>').addClass('ClickableClass').text('Should be clickable ' + i);
var myTD = $('<td></td>').append(mySpan);
var myTR = $('<tr></tr>').append(myTD);
$(myTable).append(myTR);
}
でこれを持っています終わりに感謝します。 :) .on()
関数のパラメータの順序に
ああ、アップ。あなたのような人々が、まだそこに到達しようとしている人たちに救いの手を貸してくれることを喜んで感謝しています。また、私が提供したコードは、複数のTD(約10個)を追加するのに適していますか、このサンプルコードよりもイベントハンドリングを理解するためのより良いアプローチがあります。 – GDP
これらのフォーラムは、私は可能な限り好意を返すことがうれしいです。あなたのコードのアプローチに関しては、それが最良の方法であるかどうかはあなたの究極の目的にかかっていますが、探しているものがユーザーがテーブルの行をクリックしてイベントを発生させる簡単な方法であれば、良い。同じコンテナにたくさんのものを追加するときは、何もしなければパフォーマンス上の理由から、ここで行ったようにイベントハンドラをコンテナにアタッチする必要があります。 –