【发布时间】:2017-08-22 14:45:16
【问题描述】:
我需要更新所有li 中的id,它们是$(this) 元素的父元素的兄弟姐妹,方法是在每次删除时动态计算属于同一“家庭”的当前li。
请注意,页面上有多个ul.customFieldUl,每个页面中都有多个li.customFieldLi。
$('.customFieldUl').on('click', '.remove-button', function() {
var field = $(this).parents('li.customFieldLi');
if (field.length) {
field.remove();
// PROBLEMATIC SELECTOR BELOW:
$(this).parent().siblings().each(function(i) {
var id = i + 1;
$(this).prop('id', 'field_' + id);
$(this).find('label#top_title').html('Custom Field #: <b>' + id + '</b> »');
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="customFieldUl">
<li class="customFieldLi">
<label id="top_title">Additional Field</label>
<div class="additionalFieldForm"></div>
<div class="remove-button">Remove</div>
</li>
<li class="customFieldLi">
<label id="top_title">Additional Field</label>
<div class="additionalFieldForm"></div>
<div class="remove-button">Remove</div>
</li>
</ul>
【问题讨论】:
-
您正在删除它们并尝试使用....您希望它们如何工作?
标签: javascript jquery jquery-selectors selector