jQuery finden Sie td mit Klasse-name und ändern Sie den text basierend auf dem Wert
Habe ich Tabelle und ich möchte die filter alle td-Werte basiert auf Kategorie Namen, und dann wenn der td hält einen bestimmten text ersetzen Sie es mit neuen text. unten ist mein Aktueller code. seine nicht ordnungsgemäß funktioniert und die Aktualisierung aller td ' s .
bitte um Rat, wie Sie Vorgehen.
html
<td class="actionclass">' . $page->action . '</td>
jquery
$("tbody").find("tr").each(function() { //get all rows in table
var ratingTdText = $(this).find('td.actionclass').text();
if ((ratingTdText == "saved block")) {
this.innerHTML = 'changed';
}
});
===
update
$("tbody tr td.actionclass").each(function() {
var ratingTdText = $(this).text();
console.log(ratingTdText);
if(($(this).is(':contains("new")')) || ($(this).is(':contains("saved")'))) {
(this).text().replace("top", "TopBar");
(this).text().replace("left", "LeftBar");
(this).text().replace("bottom", "BottomBar");
}
});
InformationsquelleAutor hansi silva | 2017-03-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
this
bezieht sich aufTR
element nicht dieTD
ändern Sie den Selektor in diefind()
und dein code funktioniertODER
Kann der code verbessert werden, mit
.filter()
sicher, Sie können, verwenden Sie logische Operatoren wie
$(this).text() =="aaa" || $(this).text() =="yahooooo"
ich meine, ich Werte ändern möchten, wenn text enthalten-Wert namens "saved" oder "neu" . ex - " block gespeichert, gespeichert, box , neue box Art .
können Sie überprüfen die aktualisierten Abschnitt meiner Frage, ich habe gerade einige änderungen . pls Ratschläge mir, wo ich falsch lag
was ist die Verwendung von
replace()
, wenn Sie möchten, ersetzen Sie den text, den Sie zurücksetzen, den text wie$(this).text($(this).text().replace("top", "TopBar"))
oder besser verwenden$(this).text(function(_, text){ return text.replace("top", "TopBar").replace("left", "LeftBar").replace("bottom", "BottomBar"); });
InformationsquelleAutor Satpal
Sollte
Sollten Sie nicht verwenden
this
im inneren, weil es aufrow
nicht Ihretd
InformationsquelleAutor Suresh Atta