我正在寻找一种使用jQuery比较元素的方法。基本上对于具有特定数据属性的每个元素,我想要“appendChild”另一个具有匹配ID的元素。
因此,在以下示例中,'a'的数据属性为data-dropdown =“drop-delivery-options”。第二个元素有一个ID =“drop-delivery-options”,因此它们匹配。我可以选择具有此ID的元素,但如何选择与数据属性/ ID匹配的元素?
这样的功能就像:
If elementA[data-attribute] = elementB[ID] {
(elementA).appendChild(elementB)
}
<a href="#" data-dropdown="drop-delivery-options" class="button">Add Option</a>
<div id="drop-delivery-options" data-dropdown-content class="f-dropdown content table-options drop-delivery-options">
<ul>
<li><a href="#">Add Deposit Account</a></li>
<li><a href="#">Add Cash Pickup</a></li>
<li><a href="#">Send to Card</a></li>
<li><a href="#">Add Home Delivery</a></li>
</ul>
</div>
答案 0 :(得分:1)
您可以使用data-dropdown
属性选择select
元素,然后使用appendTo()
将其附加到a
。请注意,虽然给出了您的示例,但最终会使用嵌套的a
元素,这些元素无效。您应该将父a
元素更改为其他内容。
$('.button').click(function() {
$('#' + $(this).data('dropdown')).appendTo(this);
});