jQuery - 隐藏html字符串中的元素

时间:2011-02-01 02:16:36

标签: javascript jquery html ajax

我有一个ajax函数,可以将某些数据检索为html。

如何隐藏此html字符串中的某个元素? $(data).find(".element").hide()不起作用......

1 个答案:

答案 0 :(得分:4)

你确定它不起作用吗?一个常见的错误是假设字符串本身被修改。

请改为尝试:

var $data = $(data); // create new DOM elements, and keep a reference to them
$data.find(".element").hide();  // find and hide .element
$data.appendTo('wherever');  // append the new elements

另一种可能性是.element位于返回的HTML的顶级

如果是这种情况,您需要使用filter()(docs)方法而不是find()(docs)方法。

var $data = $(data); // create new DOM elements, and keep a reference to them
$data.filter(".element").hide();  // filter and hide .element
$data.appendTo('wherever');  // append the new elements

最后要尝试的是将整个HTML包装在<div>元素中,然后执行.find()

// var $data = $('<div>' + data + '</div>');  // original version
var $data = $('<div>').append( data );   // this may be better. not sure.
$data.find(".element").hide();
$data.children().appendTo('wherever');