1
我有一个ajax函数,它将一些数据检索为html。jQuery - 在html字符串中隐藏一个元素
如何从此html字符串隐藏某个元素? $(data).find(".element").hide()
不起作用...
我有一个ajax函数,它将一些数据检索为html。jQuery - 在html字符串中隐藏一个元素
如何从此html字符串隐藏某个元素? $(data).find(".element").hide()
不起作用...
你确定它不起作用吗?一个常见的错误是假定字符串本身被修改。
试试这个:
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
的最后一件事,试图将缠绕在<div>
元素完整的HTML,然后做一个.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');
你是什么意思?您是否将HTML追加到文档中?如果没有,那么你需要在试图隐藏内部html节点之前这样做。 – 2011-02-01 02:18:55
你以后再次存储它吗?可以通过查看数据的内容来确保元素位于其中。 – Orbling 2011-02-01 02:19:42