Javascript 删除prevAll:使用jQuery的第一项

Javascript 删除prevAll:使用jQuery的第一项,javascript,jquery,client-side,Javascript,Jquery,Client Side,我在代码中做错了什么: $.each($("input[value='"+id+"']"), function(index, value) { alert($(this).val()); $("input[value='"+$(this).val()+"']").prevAll('.t-item:first').remove(); }); Html架构: p、 因为我在页面的另一个地方有相同的html,所以我想从这两个地方删

我在代码中做错了什么:

  $.each($("input[value='"+id+"']"), function(index, value) {
            alert($(this).val());
            $("input[value='"+$(this).val()+"']").prevAll('.t-item:first').remove();
        });
Html架构:

p、 因为我在页面的另一个地方有相同的html,所以我想从这两个地方删除


在这个html示例中,我的id是标记中的249或293,看起来您正试图删除输入的祖先,在这种情况下,请使用


从标记中,您似乎试图删除输入的祖先,在这种情况下,请使用

尝试:

$(this).closest('.t-item').remove();
而不是:
$(“输入[value=”+$(this.val()+”])).prevAll('.t-item:first').remove();

试试:

$(this).closest('.t-item').remove();
而不是:
$(“输入[value=”+$(this.val()+”])).prevAll('.t-item:first').remove();

您可以尝试:

  $.each($("input[value='"+id+"']"), function(index, value) {
            alert($(this).val());
            $(this).closest('.t-item').remove();
        });

获取与选择器匹配的第一个元素,从当前元素开始,通过DOM树向上移动。
您可以尝试:

  $.each($("input[value='"+id+"']"), function(index, value) {
            alert($(this).val());
            $(this).closest('.t-item').remove();
        });
$("input[value="+id+"]").closest('.t-item').remove();


获取与选择器匹配的第一个元素,从当前元素开始,在DOM树中向上移动。

您到底想做什么?prevAll将查找以前的兄弟姐妹,但您将传入一个祖先。。如果你能解释一下你在做什么以及应该发生什么,这会更容易帮助我删除整个
  • ,所以如果我的这个例子的值是293,我想删除
  • *
  • 为什么不干脆做
    $(this).最近的('li.t-item')。删除()
    ?你真正想删除的东西还不清楚。是
  • 还是s?你到底想做什么?prevAll将查找以前的兄弟姐妹,但您将传入一个祖先。。如果你能解释一下你在做什么以及应该发生什么,这会更容易帮助我删除整个
  • ,所以如果我的这个例子的值是293,我想删除
  • *
  • 为什么不干脆做
    $(this).最近的('li.t-item')。删除()
    ?你真正想删除的东西还不清楚。是李还是s?工作!但它应该像我写的那样工作..我不知道为什么,它如此合乎逻辑,使用“选择器:首先”获取所有预览。。。nvm,问题解决工作!但它应该像我写的那样工作..我不知道为什么,它如此合乎逻辑,使用“选择器:首先”获取所有预览。。。nvm,问题解决了
    $("input[value="+id+"]").closest('.t-item').remove();