我的代码中出了什么问题:
$.each($("input[value='"+id+"']"), function(index, value) {
alert($(this).val());
$("input[value='"+$(this).val()+"']").prevAll('.t-item:first').remove();
});
Html架构:
p.s我正在做'每个',因为我在我的页面上的其他地方有相同的HTML,所以我想从这两个地方删除
在这个html示例中,我的id是249或293
答案 0 :(得分:3)
从标记看,您似乎正在尝试删除输入的<li class="t-item">
祖先,在这种情况下使用.closest()
$.each($("input[value='"+id+"']"), function(index, value) {
alert($(this).val());
$(this).closest('.t-item').remove();
});
答案 1 :(得分:1)
尝试:
$(this).closest('.t-item').remove();
代替:$("input[value='"+$(this).val()+"']").prevAll('.t-item:first').remove();
答案 2 :(得分:1)
你可以尝试:
$.each($("input[value='"+id+"']"), function(index, value) {
alert($(this).val());
$(this).closest('.t-item').remove();
});
http://api.jquery.com/closest/
Get the first element that matches the selector, beginning at the current element and progressing up through the DOM tree.
答案 3 :(得分:0)
$("input[value="+id+"]").closest('.t-item').remove();