我想替换html锚点的文本:
<a href="index.html" id="link1">Click to go home</a>
现在我想替换文字'click to go home'
我试过这个:
alert($("link1").children(":first").val());
alert($("link1").children(":first").text());
alert($("link1").children(":first").html());
但它全部给我null或空字符串
答案 0 :(得分:128)
尝试
$("#link1").text()
访问元素中的文本。 #表示您正在按ID搜索。你不是在寻找一个子元素,所以你不需要孩子()。相反,您希望访问jQuery函数返回的元素内的文本。
答案 1 :(得分:56)
要按ID引用元素,您需要使用#
限定符。
尝试:
alert($("#link1").text());
要替换它,您可以使用:
$("#link1").text('New text');
.html()
函数在这种情况下也适用。
答案 2 :(得分:16)
$('#link1').text("Replacement text");
.text()
方法会将您传递的文本删除到元素内容中。与使用.html()
不同,.text()
隐式忽略任何嵌入式HTML标记,因此如果您需要嵌入一些内联<span>
,<i>
或其他类似元素,请使用{{1相反。
答案 3 :(得分:1)
如果有ID,请尝试此操作
$("#YourId").text('Your text');
或者在上课的情况下
$(".YourClassName").text('Your text');
答案 4 :(得分:-1)
function liReplace(replacement) {
$(".dropit-submenu li").each(function() {
var t = $(this);
t.html(t.html().replace(replacement, "*" + replacement + "*"));
t.children(":first").html(t.children(":first").html().replace(replacement, "*" +` `replacement + "*"));
t.children(":first").html(t.children(":first").html().replace(replacement + " ", ""));
alert(t.children(":first").text());
});
}
t.html(t.html()
t.children(":first")
示例 <a title="alpc" href="#">alpc</a>