我正在开发一个cordova android应用程序,我使用jquery进行开发。我正在使用单选按钮组,其中单选按钮是使用以下代码动态创建的,
for(var i = 0; i < jsonArr.length; i++){
var j = i+1;
$('#childInfoRadioGroup').prepend('<input type="radio" class="radioInput" name="radio-choice-v-2" id="radio-choice-v-"'+j+' value="on">'+
'<label for="radio-choice-v-"'+j+'>'+jsonArr[i].name+'</label>').trigger('create');
$('#childInfoRadioGroup input').eq(i).attr("id",jsonArr[i].id);
}
HTML:
<form>
<fieldset data-role="controlgroup" id="childInfoRadioGroup">
</fieldset>
</form>
我使用以下代码捕获更改事件,
$("input[name='radio-choice-v-2']").on("change", function () {
alert("changed!");
});
但我无法捕获上述事件。任何人都有任何想法?提前谢谢..
答案 0 :(得分:2)
由于您是动态生成HTML,请尝试事件委派,如下所示: -
$(document.body).on("change","input[name='radio-choice-v-2']", function () {
alert("changed!");
});
OR
$("#childInfoRadioGroup").on("change","input[name='radio-choice-v-2']", function () {
alert("changed!");
});
答案 1 :(得分:0)
$(document).on("change","input[name='radio-choice-v-2']", function () {
alert("changed!");
});