2013-02-19 78 views
0

我試圖獲取由jquery生成的單選按鈕的值。我認爲在通話事件中存在一些問題。這是我的代碼。如何獲取jquery生成的單選按鈕的值

HTML

<div id="divOption1"></div> 

jQuery的單選按鈕生成

document.getElementById('divOption1').innerHTML = '<input id="option1" type="radio" value="1"/> '+ questions[currentQuestion]['option1']; 

這裏我打電話jQuery的功能得到單選按鈕值

$("#option1").click(function(){ 
     alert($(this).val()); 
    }) 

幫我找出問題出在哪裏。 並告訴我爲什麼事件不會被稱爲當我生成jquery Html和網頁的附加?

回答

5

使用on()而不是點擊以將事件與動態生成的元素綁定。你必須委託給父元素可以是文檔或任何父元素。

​​

$(document).on("click", "#option1", function(){ 
    alert($(this).val()); 
}); 
+0

或可能是$( 「#divOption1」)。在..而不是$(文件)? ()上的 – luckystars 2013-02-19 12:43:00

+0

沒有工作,但.live()完美地工作。無論如何感謝您的幫助。 – user2087078 2013-02-19 14:08:04

+0

你需要jQuery版本1.7+,@ user2087078。用現場演示檢查我的更新答案。 – Adil 2013-02-19 17:28:46

0

使用live動態生成HTML ..

$("#option1").live("click",function(){ 
    alert($(this).val()); 
}); 
+0

棄用自1.7 - [http://api.jquery.com/live/](http://api.jquery.com/live/)使用'.on()'[http://api.jquery。 COM /上/(http://api.jquery.com/on/) – Wez 2013-02-19 12:43:36

相關問題