.each()函数jQuery并在select上更改事件

时间:2014-04-23 08:18:16

标签: jquery events triggers each

我有这个

var options = new Array("A","B","C");
var selectHtml="";

$.each( options, function( index, value ) {
    var option = value;
    selectHtml += '<select id="p_'+index+'" >';
    selectHtml +='<option  value="p_yes_'+index+'">Yes ' + option + '</option>';
    selectHtml +='<option value="p_no_'+index+'">No ' + option + '</option>';
    selectHtml +='</select>';
});

我希望在用户更改值时为每个选择(p_A,p_B,...)创建警报。

谢谢大家。

3 个答案:

答案 0 :(得分:0)

将您的html附加到DOM,然后使用.on()附加动态生成元素的事件。使用attribute starts with selector仅将事件附加到idp_开头的元素。试试这个:

$(document).on("change","select[id^='p_']",function(){
    alert($(this).val());
});

<强> DEMO

答案 1 :(得分:0)

在脚本标记中添加此内容 -

$("select").change(function(){
    alert("I am clicked");
});

答案 2 :(得分:0)

你需要的js就是这样的

$(document).on("change","[id^='p_']",function(){
    alert('Alert message goes here');
});