ganti teks tautan dengan jquery

86

saya ingin mengganti teks dari jangkar html:

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

sekarang saya ingin mengganti teks 'klik untuk pulang'

saya sudah mencoba ini:

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

tapi itu semua memberi saya null atau string kosong

Michel
sumber

Jawaban:

141

Mencoba

$("#link1").text()

untuk mengakses teks di dalam elemen Anda. Tanda # menunjukkan Anda menelusuri berdasarkan id. Anda tidak mencari elemen anak, jadi Anda tidak membutuhkan anak (). Sebagai gantinya Anda ingin mengakses teks di dalam elemen yang dikembalikan fungsi jQuery Anda.

Larry Lustig
sumber
1
Terima kasih. Merasa lega bahwa saya mendapat jawabannya, dan sangat bodoh ... karena mencoba semua pernyataan berbeda tetapi melupakan # -tanda ....
Michel
62

Untuk mereferensikan elemen dengan id, Anda perlu menggunakan #qualifier.

Mencoba:

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

Untuk menggantinya, Anda bisa menggunakan:

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

The .html()Fungsi akan bekerja dalam kasus ini juga.

zombat
sumber
18
$('#link1').text("Replacement text");

The .text()metode tetes teks yang lulus ke dalam isi elemen. Tidak seperti menggunakan .html(), .text()secara implisit mengabaikan setiap tertanam HTML markup, jadi jika Anda perlu untuk menanamkan beberapa inline <span>, <i>, atau apa pun elemen lain yang serupa, penggunaan .html()sebagai gantinya.

Runcing
sumber
4

Coba ini, dalam kasus id

$("#YourId").text('Your text');

ATAU ini, dalam kasus kelas

$(".YourClassName").text('Your text');
Muhammad Attiq
sumber
-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());
    });
}
  • Kode pertama cari ganti judul t.html(t.html()
  • Kode kedua diganti teks t.children(":first")

Sampel <a title="alpc" href="#">alpc</a>

alpc
sumber
1
Meskipun kode dalam jawaban Anda mungkin berhasil, Anda harus berusaha untuk membuat jawaban yang sangat baik yang menjelaskan mengapa dan bagaimana cara kerjanya.
Ian Stapleton Cordasco