0

このようなjQuery Uiタブがあります

<div id="tabs">
    <ul>
        <li><a href="#tabs-1">Preloaded</a></li>
        <li><a href="ajax/content1.php">Tab 1</a></li>
        <li><a href="ajax/content2.php">Tab 2</a></li>
        <li><a href="ajax/content3-slow.php">Tab 3 (slow)</a></li>
        <li><a href="ajax/content4-broken.php">Tab 4 (broken)</a></li>
    </ul>
    <div id="tabs-1">

    </div>
</div>

私が持っているJavaScriptで

$(document).ready(function() {
    $( "#moreinfotabs" ).tabs();
    $('a').click(function(){
        alert("asdas");
    });

たとえば、content1.php が読み込まれると、content1.php のリンクのクリックを処理し、何かを警告したいのですが、それは起こりません。どうやってするか ?

PS:a.classnameで使用したいものは何でもリンク用に書きました....

4

1 に答える 1

1

動的に生成された要素の場合、要素の静的な親の 1 つまたはドキュメント オブジェクトからイベントを委任する必要があります。

$(document).on('click', 'a', function(){
    alert("asdas");
});

ドキュメント準備完了ハンドラーを閉じていないことに注意してください。

$(document).ready(function() {
    $( "#moreinfotabs" ).tabs();
    $(document).on('click', 'a', function(){
        alert("asdas");
    });
}) // <--
于 2012-10-29T00:25:58.243 に答える