【发布时间】:2015-06-23 17:06:03
【问题描述】:
我正在使用我的第一个 web 应用程序,我使用 ajax 解析对象将动态内容添加到一个特定的 .html 中......在这样做的同时,我发现在选择下拉列表的每个选项中添加 data-* 属性时存在问题。 . 当 JQuery 中的 change 函数执行时,它返回 undefined。
这是我的 ajax 函数,(我知道这不是最好的方法)。
ajaxPost("link/x.php",{},function(result){
var json=JSON.parse(result);
var resultado=json.response;
if(json.error==0){
var estadosString='<option value=""></option>';
var cont=0;
for(estado in resultado){
estadosString+=('<option value="'+resultado[estado].nombre+'">'+resultado[estado].nombre+'</option>');
}
$('#estados').html(estadosString);
cont=0;
$('#estados option').each(function(){
$(this).attr('data-id',cont);
$(this).data('id',cont++);
});
}else{
alert("No hay estados");
}
});
data-id 属性已成功添加到每个选项,当我使用此代码在更改选择选项上获取 data-id 时,问题就开始了。
$('#estados').on('change',function(){
alert($(this).data("id"));
});
它总是返回未定义,任何人都可以帮助我吗?谢谢..!
【问题讨论】:
-
alert($(this).children(':selected').data("id")); -
这行代码解决了我的问题,非常感谢!
标签: javascript jquery ajax