javascript - 我无法使用 jquery 获取跨度的 ID

标签 javascript jquery html event-handling

您好,我如何使用 jquery 获取我的 span 的 ID。我尝试了一些尝试,但它没有用,没有任何东西正在登录控制台。

$(function () {

    for (var id = 0; i < data.length; i++) {
        var dynamicli = '<li class="">' +
            '<img src="path/to/image" class="_xy">' + data[i].name + '<i class="glyphicon glyphicon-user oncho"></i>' +
            '<span class="myspan" id="' + data[i].id + '></span></li>';
        $('#myullist').append(dynamicli);
    }

    $('#myullist').on('click', '.oncho', function () {
        var id = $(this).find('span').attr('id');
        console.log(id);
    });
});

//index.html

 <div class="wrapper-n">

    <ul id="myullist"></ul>
</div>

编辑 我将点击事件更改为“oncho”类,这样当我点击图标时我可以获得跨度 ID。

编辑:我尝试使用 find() 但我仍然无法获得未定义的 id

最佳答案

您错过了 id 的完成引用:

'<span class="myspan" id="'+data[i].id+'"></span></li>';
//                                      ^

更新

使用next因为 span 不是 .oncho 的后代:

$('#myullist').on('click', '.oncho', function () {

    var id = $(this).next('span').attr('id');
    //               ^^^^^
    console.log(id);
});

关于javascript - 我无法使用 jquery 获取跨度的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30930913/

相关文章:

jquery - jQuery 函数后页面重新加载出现问题

javascript - 从主窗口访问 iframe 内部属性

html - 为什么 Blueprint-Css 将布局的最大网格宽度设置为 950px?

javascript - Facebook 点赞按钮帖子不显示

javascript - 在元素连续出现后获取 JavaScript 数组元素

javascript - 如何正确引用传递给 knockout.JS 的当前元素的属性?

javascript - 在 jquery 请求中编辑全局变量

javascript - 如何替换两个索引之间的子字符串

html - 如何在表单中制作全宽字段?

php - POST 方法是否仅用于发送用户定义的输入