Javascript 如何从包含HTML的变量中删除HTML元素?

Javascript 如何从包含HTML的变量中删除HTML元素?,javascript,jquery-ui,jquery,Javascript,Jquery Ui,Jquery,我有一个jQuery变量,它包含附加到页面的HTML 在将HTML元素附加到页面之前,我需要删除它,但我似乎无法过滤它 例如,变量包含: <div class="block1"></div> <div class="block2"></div> 及 但这些都不管用。有什么建议吗?您是否尝试了.remove功能 var mydata = $('<div class="block1"></

我有一个jQuery变量,它包含附加到页面的HTML

在将HTML元素附加到页面之前,我需要删除它,但我似乎无法过滤它

例如,变量包含:

<div class="block1"></div>
<div class="block2"></div>


但这些都不管用。有什么建议吗?

您是否尝试了.remove功能

  var mydata = $('<div class="block1"></div>
                 <div class="block2"></div>');
  mydata.remove('.block1');
var mydata=$('
');
mydata.remove('.block1');
尝试
.remove()


$.filter不会执行您认为它可以执行的操作


我会尝试$(mydata).remove('.block1')

直接应用于字符串的过滤器有时会给出字符串结果,将元素添加到DOM然后应用过滤器是安全的。将html分配给DOM中的某个临时元素,从该临时元素中获取筛选项并将其分配给所需元素

$('#TemporaryElemntToAddHtml').html(mydata);

    $('#ElemntToAddHtml .block1').each(function(){
         $('#ElemntToAddHtml').append($(this));
    });

$('#TemporaryElemntToAddHtml').remove();
使用本机方法在元素索引处删除,并删除1项

mydata.splice( mydata.filter('.block1').index(), 1 );
注意,对于该拼接,不要添加mydata=mydata.splice(..),因为这将返回删除的元素

$('#TemporaryElemntToAddHtml').html(mydata);

    $('#ElemntToAddHtml .block1').each(function(){
         $('#ElemntToAddHtml').append($(this));
    });

$('#TemporaryElemntToAddHtml').remove();

否则,使用jQuery的方法,就像一些人已经说过的那样。

mydata
已经设置在某个地方了吗?您是否尝试过
$(“div”).filter('.block1').remove()
$(“div”).filter(返回$(this.hasClass(“.block1”)).remove()?运行良好。我想你把
选择器
函数
搞混了。。。“我只是想说对一点。”马里奥·德·谢普米斯特,是的,这似乎不起作用。我想知道这是否与从ajax请求传回的变量有关,但我看不出这个变量会有什么不同。是否将ajax结果转换为jquery元素?例如:$(myresult)这只是将mydata返回为null?
var mydata = $(mydata).remove('.block1');
$('#TemporaryElemntToAddHtml').html(mydata);

    $('#ElemntToAddHtml .block1').each(function(){
         $('#ElemntToAddHtml').append($(this));
    });

$('#TemporaryElemntToAddHtml').remove();
mydata.splice( mydata.filter('.block1').index(), 1 );