заменить текст с помощью jQuery


Я хочу заменить текст HTML-якоря:

<a href="index.html" id="link1">Click to go home</a>

теперь я хочу заменить текст "нажмите, чтобы пойти домой"

Я попытался это:

alert($("link1").children(":first").val());
alert($("link1").children(":first").text());
alert($("link1").children(":first").html());

но все это дает мне null или пустую строку

4 76

4 ответа:

попробовать

$("#link1").text()

для доступа к тексту внутри элемента. # Указывает, что вы ищете по идентификатору. Вы не ищете дочерний элемент, поэтому вам не нужны дети(). Вместо этого вы хотите получить доступ к тексту внутри элемента, возвращаемого функцией jQuery.

чтобы ссылаться на элемент по идентификатору, необходимо использовать # квалификатор.

попробуй:

alert($("#link1").text());

чтобы заменить его, вы можете использовать:

$("#link1").text('New text');

The .html() функция будет работать и в этом случае тоже.

$('#link1').text("Replacement text");

The .text() метод отбрасывает текст, который вы передаете в содержимое элемента. В отличие от использования .html(),.text() неявно игнорирует любую встроенную разметку HTML, поэтому, если вам нужно встроить некоторые встроенные <span>,<i>, или любые другие подобные элементы, используйте .html() вместо.

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")

Sample alpc