Заменить якорный текст на jquery
Я хочу заменить текст привязки 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 или пустую строку
Ответы
Ответ 1
Try
$("#link1").text()
для доступа к тексту внутри вашего элемента. # Указывает, что вы ищете по id. Вы не ищете дочерний элемент, поэтому вам не нужны дети(). Вместо этого вы хотите получить доступ к тексту внутри элемента, возвращаемого функцией jQuery.
Ответ 2
Чтобы ссылаться на элемент по id, вам нужно использовать квалификатор #
.
Try:
alert($("#link1").text());
Чтобы заменить его, вы можете использовать:
$("#link1").text('New text');
В этом случае будет работать и функция .html()
.
Ответ 3
$('#link1').text("Replacement text");
Метод .text()
переносит текст, который вы передаете в содержимое элемента. В отличие от использования .html()
, .text()
неявно игнорирует любую внедренную разметку HTML, поэтому, если вам нужно встроить некоторые встроенные <span>
, <i>
или любые другие подобные элементы, вместо этого используйте .html()
.
Ответ 4
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