简体   繁体   English

在父div元素中获取子数组值

[英]get child array values in a parent div element

I have an array like this 我有这样的数组

products = [{id}, {id}, {id}, {id}]

I want to place available ids in a parent div 我想将可用的ID放在父div中

<div data-ids="{{ place ids here }}"> <!-- parent div -->
     products.forEach(function(e){
        <div class="product">
            console.log(e.id);
        </div>
     });
</div>

I would like to put all the available ids in the parent data-ids, 我想将所有可用的ID放在父数据ID中,

is there any way to put it without an additional loop specifically for placing ids in parent div? 有什么办法可以在没有额外的循环的情况下专门将其放入父div中?

You can try with map() and .data() like the following way: 您可以通过以下方式尝试map().data()

 var products = [{id: 1},{id: 2},{id: 3},{id: 4}]; var ids = products.map(i => i.id).join(','); $('.product').parents().data('ids',ids); console.log($('.product').parents().data()); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div data-ids=""> <!-- parent div --> Test <div class="product"> </div> </div> 

 var products = [{ id:1 },{ id:2 },{id:3},{id:4}]; var prod_len=products.length; for(let i=0;i<prod_len;i++){ var div_id=create_html(products[i]['id']) $(document).find('.prod_data').append(div_id) } function create_html(id){ return `<div data-ids=${id}> Product Data ${id} <div class="product"> </div> </div>` } 
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="prod_data"></div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM