我有以下代码。
现在,我需要从标记中删除文本,您可以在标记中找到"Google必须消失“文本
该行的输出必须为
<a title="" href="http://www.google.com"></a>.
我试着选择a标签,但我不能只得到那1个标签。我总是得到所有的a标签。我尝试了下面的each循环。但不会有任何结果。
我不能在该标记上设置任何类来控制,所以这不是一个选项。
$('ul.menu li.dhtml-menu').each(function() {
});
$('ul.menu li.dhtml-menu a').each(function() {
});
发布于 2011-10-17 13:14:40
如果您只是想删除锚标记的内部文本,则需要遍历div
中的所有锚标记,并检查它们的text()
值。
jQuery:
$('#content a').each(function() {
if ($(this).text() == 'Google Must disappear')
$(this).text('');
});
jsFiddle上的工作示例。
编辑OP的注释:由于您希望基于结构而不是内部文本来操作元素,因此我强烈建议您修改您的标记,使其首先是有效的。就像你现在的标记一样,直接在li
中嵌套一个li
会导致火狐关闭第一个li
标记:
我会先修改标记,而不是编写一些jQuery来处理这个标记问题。
发布于 2011-10-17 13:14:40
这就是你要找的吗?
$('ul.menu a').each(function() {
if($(this).html() == "Google Must disappear")
$(this).html("");
});
发布于 2011-10-17 13:13:55
我仍然不明白你在说什么,但是如果你想选择某个节点,你可以指定一个id
。
像这样:
<a href="http://google.com" id="googleLink">Google</a>
并通过以下方式选择它:
$("#googleLink")
否则,您可以在jQuery中使用child selector。
https://stackoverflow.com/questions/7794211
复制