Javascript / jQuery verstecken, wenn html gleich 0 ist
Lesezeit: 2 Minuten
Ich habe diese Seite gebaut www.piano-warehouse.co.uk/category/upright-pianos/ mit WordPress und haben ein Plugin verwendet, um den gesparten Geldbetrag zu berechnen, wenn ein Rabatt auf ein Produkt gewährt wurde. Ich möchte das Setup so ändern, dass, wenn kein Rabatt angewendet wurde und kein Betrag gespart wurde, der Abschnitt Sie sparen ausgeblendet wird. Ich nehme an, dass Javascript oder jQuery das Ticket sein werden, aber ich habe ein sehr elementares Verständnis dieser Sprachen und würde mich sehr über jede Hilfe beim Erstellen dieser Abfrage freuen.
Bisher habe ich versucht, dies ohne Freude zu meiner Funktionsdatei hinzuzufügen
function you_save_hide () {
if ($("span.yousave_list_price").text() == "0") {
$("span.yousave_list").hide();
}
}
enthalten auch html
– Guradio
9. Mai 2016 um 9:02 Uhr
Und ich vermute die "span.yousave_list_price" soll auch versteckt werden?!
– A. Wolff
9. Mai 2016 um 9:03 Uhr
Sie sollten vielleicht ein Div verstecken, anstatt 1+ Span(s). Bitte zeigen Sie Ihre HTML-Datei
– Zufällig
9. Mai 2016 um 9:07 Uhr
Wie funktioniert “HTML gleich 0”?
– evolutionbox
9. Mai 2016 um 9:07 Uhr
Aus dem Link kann ich sehen, ob $("span.yousave_list_price") enthält ein weiteres DOM-Element
Wenn Sie also versuchen, dies zu verbergen span.yousave_list_price Sie müssen möglicherweise so vorgehen
var _getAmountList = $('.amount');
_getAmountList.each(function(){
// equalizing with £0 just for demo
// You can use regex with fine tune it.
if($(this).text().trim() ==="£0"){
$(this).parent().hide()
}
})
Ich habe Ihre Website überprüft, span.yousave_list_price ist das nächste Element von span.yousave_list, und ich bin sicher, Sie wollten nicht alle span.yousave_list von 0 ausblenden. Sondern nur diejenigen, die span.yousave_list_price enthalten. Also werden wir alle span.yousave_list_price auswählen -> prüfen, ob der Text 0 ist -> dann wählen wir seinen Elternteil aus und -> innerhalb des Elternteils verstecken wir die span.yousave_list.
function you_save_hide () {
$("span.yousave_list_price").each(function(){
if ($(this).text().trim() == "0"){
$(this).parent().closest("span.yousave_list").hide(); //hide the nearest .yousave_list when the yousave_list_price equals 0
}
});
}
Wenn Sie diese Funktion beim Laden der Seite ausführen, müssen Sie sie innerhalb aufrufen $(document).ready(function(){...}
11859000cookie-checkJavascript / jQuery verstecken, wenn html gleich 0 istyes
enthalten auch html
– Guradio
9. Mai 2016 um 9:02 Uhr
Und ich vermute die
"span.yousave_list_price"
soll auch versteckt werden?!– A. Wolff
9. Mai 2016 um 9:03 Uhr
Sie sollten vielleicht ein Div verstecken, anstatt 1+ Span(s). Bitte zeigen Sie Ihre HTML-Datei
– Zufällig
9. Mai 2016 um 9:07 Uhr
Wie funktioniert “HTML gleich 0”?
– evolutionbox
9. Mai 2016 um 9:07 Uhr