我有以下 HTML:
<div id="ServiceProvider" class="main_filter" name="filterDiv">
<div class="filter_chkbox_div" style="display:none">
<label class="ATT">AT&T</label>
</div>
<div class="filter_chkbox_div" style="display:none">
<label class="CABLEONE">Cable One</label>
</div>
<div class="filter_chkbox_div" style="display:none">
<label class="CABLEONEv6">Cable Onev6</label>
</div>
<div class="filter_chkbox_div" style="display:none">
<label class="CHARTER">Charter</label>
</div>
</div>
在运行时,我只显示我在数组 providerCodes
中收到的那些标签
jQuery 代码
for (var i = 0; i < providerCodes.length; i++) {
var providerCheckBox = $("#" + providerCodes[i]);
if (providerCheckBox.length > 0) {
$(providerCheckBox).parent().show();
}
}
现在我想根据我在 providerCodes
中收到的顺序放置这些标签。例如,如果 providerCodes
数组在第 0 个索引上包含 CHARTER
并且在第一个索引上包含 CABLEONE
,我想相应地更改这些标签的位置。目前,它将首先显示 CABLEONE
,然后显示 CHARTER
。我如何在 jQuery 中执行此操作?
最佳答案
我会这样做(前提是您有容器的 div 选择器):
var containerSelector = $("<container-selector>");
for (var i = 0; i < providerCodes.length; i++) {
var providerCheckBox = $("#" + providerCodes[i]);
if (providerCheckBox.length > 0) {
$(providerCheckBox).parent().show().detach().appendTo(containerSelector);
}
}
关于jquery - 如何使用 jquery 改变 HTML 元素的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37435104/