2016-08-12 8 views
0

私はiframeを持っていますし、選択したものに応じてdivの内容を変更するulリストがあります。ul> liをクリックするのは初めてです

ユーザーがリスト内の要素のいずれかを選択したときに、何かを実行するためのクリック機能を取得する必要がありますが、初めて機能するだけです。

$("#____bl_k_dd").on("click", "li", function(){ 
    alert("I work") 
}); 

私は別の機能を試しました。もう一つ試みました。

$("#____bl_k_dd li").click(function() { 
    alert("I work") 
}); 

これは初めての動作ですが、ulリストを再度クリックするとアラートは表示されません。

EDIT。

ulのIDは変更されませんが、常に同じです。

+1

てみ '$(文書).on( 'クリック'、 '#____bl_k_dd李'、機能(){'。 – Tushar

+0

あなたはインラインフレーム内にこれをコーディングしていましたか? –

+0

はい、それはIFRAME – grec0o

答えて

1

#____bl_k_ddを除去したときに内容が変更に交換されている場合、あなたの代わりに体にあなたのクリックをフックする必要があり、このような何か:

$("body").on("click", "#____bl_k_dd li", function(){ 
    alert("I work") 
}); 
+0

内だしませんでした働いて、感謝も。 – grec0o

0

与えられたコードが動作するので、それは奇妙だ、あなたはこれをチェックすることができますfiddle

$("#____bl_k_dd").on("click", "li", function(){ 
     alert("I work"); 
    }); 

jQueryのドキュメントから:

イベントhandl現在選択されている要素にのみバインドされます。コードが.on()を呼び出した時点で存在していなければなりません。要素が存在し、選択できるようにするには、HTMLマークアップ内の要素の後にスクリプトを配置するか、文書レディハンドラ内でイベントバインディングを実行します。また、代理イベントを使用してイベントハンドラをアタッチすることもできます。

関連する問題