您好我有网络聊天和很多用户,我已经打开了这样的聊天窗口
chatbox.newWindow(name, $(this).find("span").data("id"));
并从朋友在线列表中选择它们,但我想获取每个聊天的ID,当我点击发送消息时
例如,当我点击发送消息时,我想获得好人聊天的ID 有没有办法得到最接近的跨度id?
html:
<div id="friends_panel">
<span>Online uživatelé</span>
<div class="user">
<span data-id="1">Nice guy</span>
</div>
<div class="user">
<span data-id="2">John</span>
</div>
</div>
感谢您的帮助
答案 0 :(得分:0)
听起来你可以使用.closest()来解决这个问题。
答案 1 :(得分:0)
你自己说 - 每个人。
$(this).find("span[data-id]").each(function() {
console.log($(this).data('id'))
})
演示:http://jsfiddle.net/F5hyz/1/
如果我理解正确并且你打开了多个具有用户名和ID的聊天窗口 - 它可能是这样的:
$(this).find("span[data-id]").each(function() {
chatbox.newWindow($(this).text(), $(this).data('id'));
})
如果所有具有“数据ID”的跨度中你都专门寻找“好人” - 你可以将其归档:
var id = $(this).find("span[data-id]").filter(function() {
return $(this).text() == 'Nice guy';
}).data('id')
答案 2 :(得分:0)
看起来你的查询得到了<span>
两个,因此无法返回date-id
属性。迭代<span>
并看看你得到了什么。