Dalam dokumentasi jQuery dikatakan:
Teks yang cocok dapat muncul langsung di dalam elemen yang dipilih, di salah satu keturunan elemen itu, atau kombinasi
Oleh karena itu tidak cukup menggunakan :contains()
pemilih , Anda juga perlu memeriksa apakah teks yang Anda cari adalah konten langsung dari elemen yang Anda targetkan, sesuatu seperti itu:
function findElementByText(text) {
var jSpot = $("b:contains(" + text + ")")
.filter(function() { return $(this).children().length === 0;})
.parent(); // because you asked the parent of that element
return jSpot;
}