如何在jquery动态生成的下拉列表中处理onchange事件
我正试图根据其onkeyup函数上txtCols中指定的int值创建下拉列表,如下所示:如何在jquery动态生成的下拉列表中处理onchange事件,jquery,dynamic,drop-down-menu,Jquery,Dynamic,Drop Down Menu,我正试图根据其onkeyup函数上txtCols中指定的int值创建下拉列表,如下所示: $("#txtCols").keyup(function(){ var $count = $(this).val(); $("#holder").html(''); // define matrix header options available var matrixHeaders = { 'TB': 'Text Box', 'DD':
$("#txtCols").keyup(function(){
var $count = $(this).val();
$("#holder").html('');
// define matrix header options available
var matrixHeaders = {
'TB': 'Text Box',
'DD': 'Drop Down',
'CL': 'Calendar'
}
for ($i=0;$i<$count;$i++)
{
var s = $('<select id="header'+$i+'"/>');
for(var val in matrixHeaders) {
$('<option />', {value: val, text: matrixHeaders[val]}).appendTo(s);
}
s.appendTo('#holder');
}
});
还尝试:
$(document).on('change', '#header' + j, function() {
alert('hii');
}(j));
但此事件不起作用。使用on函数在动态添加的元素上调用处理程序:
$(document).on('change', '#header' + j, function() {
或者,对于任何j
:
$(document).on('change', '[id^="header"]', function() {
但我宁愿使用一个类,而不是一个匹配id开头的选择器:
$(document).on('change', '.header', function() {
...
var s = $('<select class=header id="header'+$i+'"/>');
$(document).on('change','.header',function()){
...
var s=$('');
使用on函数在动态添加的元素上调用处理程序:
$(document).on('change', '#header' + j, function() {
或者,对于任何j
:
$(document).on('change', '[id^="header"]', function() {
但我宁愿使用一个类,而不是一个匹配id开头的选择器:
$(document).on('change', '.header', function() {
...
var s = $('<select class=header id="header'+$i+'"/>');
$(document).on('change','.header',function()){
...
var s=$('');
试试这个:
首先将类添加到选定的smth中,如:select id=“header”+$i++”class=“header”/
下一个添加处理程序:
$(".header").live("change", function () {
var id = $(this).attr("id").split("header").join(""); //get i
var opt = $("#header" + id + " option:selected").val(); //or whatever you need
switch (opt) {
case ..
}
});
试试这个:
首先将类添加到选定的smth中,如:select id=“header”+$i++”class=“header”/
下一个添加处理程序:
$(".header").live("change", function () {
var id = $(this).attr("id").split("header").join(""); //get i
var opt = $("#header" + id + " option:selected").val(); //or whatever you need
switch (opt) {
case ..
}
});
请看…我的代码..我已经编辑了..是你说的吗?它在下面..也尝试了headerI建议请给我完整的脚本..因为它不工作..以这种方式。请看…我的代码..我已经编辑..是你说的吗?它在下面..也尝试了headerI建议请给我完整的脚本..因为它不工作..以这种方式。