2011-01-27 14 views
1

"topicColumnTemplate"という名前のIDのハイパーリンクでイベントを適用したいと考えました。下記のHTMLスニペットであると私は、構文=>$('[id^=topicColumnTemplate] a').click(function() { // do operation});div内のハイパーリンクのjqueryレジスタイベント

ですが、私が使用している場合はイベントが適用され、リンクが動的に生成される取得されていない、一度、すべてのDOMは構文=>$('[id^=link]').click(function() { // do operation});を通じてリンクIDを使用して移入された後、それは

WORKS

何が欲しいのjavascriptの初期化では、上記の最初の構文を使用していたが、既にDOM &に存在するul IDを使用して動的に生成されていない。ただ、[ID^= topicColumnTemplate]作品ULすなわちのdivのIDを与えるが、それはすべてのすべての私は機能が

* *を交換するときにのみinvocatedます必要なブロック&周りの機能invokationの原因となるULブロックの周囲に適用なっています" - "は "<"(html)

<ul id="topicColumnTemplate1" class="listcol "> 
    <li id="row_0" class="listrow "> 
     <a id="link_0" class="listtopic">user1</a> 
    </li> 
    <li id="row_1" class="listrow "> 
     <a id="link_1" class="listtopic">user2</a> 
    </li> 
    <li id="row_2" class="listrow "> 
     <a id="link_2" class="listtopic">user3</a> 
    </li> 
</ul> 

<ul id="topicColumnTemplate2" class="listcol "> 
    <li id="row_0" class="listrow "> 
     <a id="link_0" class="listtopic" href="#">user1</a> 
    </li> 
    <li id="row_1" class="listrow "> 
     <a id="link_1" class="listtopic" href="#">user2</a> 
    </li> 
    <li id="row_2" class="listrow "> 
     <a id="link_2" class="listtopic" href="#">user3</a> 
    </li> 
</ul>  

答えて

1

ライブ機能を使用してください。これにより、後で作成される要素のイベントハンドラが適用されます。つまり、

$('[id^=topicColumnTemplate] a').live("click", function(){ 
    // do operation 
}); 
関連する問題