检测动态生成的单选按钮和jQuery的变化

我试图发现变化动态生成的单选按钮。我有一个生成的单选按钮的表单,他们根据自己的ID保存在数据库。所以这是什么

<input type="radio" name="data[Setting][47]" id="Setting47Entry" value="entry">
<input type="radio" name="data[Setting][47]" id="Setting47Standard" value="standard">

<input type="radio" name="data[Setting][48]" id="Setting48Entry" value="entry">
<input type="radio" name="data[Setting][48]" id="Setting48Standard" value="standard">

<input type="radio" name="data[Setting][49]" id="Setting49Entry" value="entry">
<input type="radio" name="data[Setting][49]" id="Setting49Standard" value="standard">

没有预定数将显示单选按钮。有可能是2或20,这取决于其他的选项,用户设置。

我知道如何检测变化如果名字是静态的,但由于名称是不同的每个用户,我不知道如何处理。

 

你为什么不使用attribute starts with selector尝试,

$('input[name^="data[Setting]"]').change(function(){  });

如果名称是动态的,独特的和没有线索来选择他们的名字使用静态的东西,像类名…

<input type="radio" class="user-option" name="data[Setting][47]" id="Setting47Entry" value="entry">
<input type="radio" class="user-option" name="data[Setting][47]" id="Setting47Standard" value="standard">

<input type="radio" class="user-option" name="data[Setting][48]" id="Setting48Entry" value="entry">
<input type="radio" class="user-option" name="data[Setting][48]" id="Setting48Standard" value="standard">

<input type="radio" class="user-option" name="data[Setting][49]" id="Setting49Entry" value="entry">
<input type="radio" class="user-option" name="data[Setting][49]" id="Setting49Standard" value="standard">

现在你可以检查事件

$(document).ready(function () {

    $('.user-option').on('change',function(){

        alert($(this).attr('name') + ' has changed and now it is checked')

    })
});
posted @ 2014-12-24 10:13  hannover  阅读(1758)  评论(0编辑  收藏  举报