2013-02-19 7 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() вместо щелчка, чтобы связать событие с динамически сгенерированными элементами. Вы должны делегировать родительский элемент, это может быть документ или любой родительский элемент.

Live Demo

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

или может быть $ ("# divOption1"). На .. вместо $ (документ)? – luckystars

+0

сверху() не работает но .live() произведение совершенно. в любом случае спасибо за вашу помощь. – user2087078

+0

Вам нужна версия jQuery 1.7+, @ user2087078. Проверьте мой обновленный ответ с живой демонстрацией. – Adil

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. ком/на /] (http://api.jquery.com/on/) – Wez

Смежные вопросы