使用数据属性 - 构建列表&看看是否存在

时间:2013-12-16 01:42:02

标签: javascript jquery html jquery-selectors

根据下图,我有两个问题:

enter image description here

  1. 如何判断是否存在具有特定值的'data-conversationmessageuserid'数据属性之一 - 例如1000000003?我相信数据选择器是我需要的,并尝试了以下但它还没有工作:

    if($('#conversationsInBoxMessagesWrapperDIV')['data-conversationmessageuserid=1000000003']) {
        // do something
    } 
    
  2. 我怎样才能将所有'data-conversationmessageuserid'数据属性放入一个数组并循环通过它们?我还在玩这个代码,但它远非可发布。试图使用.map

    .MAP(函数()

  3. 非常感谢

2 个答案:

答案 0 :(得分:2)

尝试:

if($('#conversationsInBoxMessagesWrapperDIV [data-conversationmessageuserid=1000000003]').length) 

$('#conversationsInBoxMessagesWrapperDIV').find('[data-conversationmessageuserid=1000000003]') //Or children only to look at one level.

要获取您可以执行的所有数据值:

   var conversationmessageuserids = $('#conversationsInBoxMessagesWrapperDIV').children().map(function(){
          return $(this).data('conversationmessageuserid');
  }).get();

答案 1 :(得分:1)

jQuery支持数据属性:http://api.jquery.com/data/

所以你可以做if($('#conversationsInBoxMessagesWrapperDIV').data('conversationmessageuserid') === 1000000003)