Заменить якорный текст на 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