Dropdown -Auswahl kein Eingangsfeld mit dem Produktpreis besiedelt
Posted: 23 Feb 2025, 14:47
Ich arbeite an einem Spring Boot + Thymeleaf -Projekt, in dem ich ein Bestellformular habe. In diesem Formular gibt es eine Dropdown für die Auswahl eines Produkts, und ich möchte, dass der Produktpreis des Produkts automatisch im Feld Netto -Einheitspreiseingang angezeigt wird > Ich habe versucht, den Preis jedes Produkts in einem Data-Price-Attribut für die Elemente zu speichern. Dann verwendete JavaScript, um ein Änderungsereignis auf der Dropdown-Downelle zu hören, das Datenpreis des ausgewählten Elements zu greifen und diesen Wert in der Eingabe festzulegen. Unabhängig davon, was ich tue, bleibt das Netto -Einheitspreisfeld leer. Ich habe sogar mit einfachem HTML + JS getestet, aber es wird in der Live -Umgebung immer noch nicht aktualisiert.
Select
document.addEventListener('DOMContentLoaded', function() {
const productSelect = document.getElementById('productSelect');
const netPriceInput = document.getElementById('netUnitPrice');
productSelect.addEventListener('change', function() {
const selectedOption = this.options[this.selectedIndex];
const price = selectedOption.getAttribute('data-price');
if (price) {
netPriceInput.value = price;
}
});
});
< /code>
Ich habe auch ein Basis.html -Layout, das Bootstrap und andere Skripte lädt. Ich habe mir Sorgen gemacht, dass es vielleicht mit meinem Inline -Skript in Konflikt steht, aber ich habe keinen direkten Konflikt gefunden. Im Moment wirft das JavaScript keine Fehler in die Konsole, und die Datendatenpreisattribute sehen in der gerenderten HTML korrekt aus, aber die Eingabe aktualisiert nie. Könnte fehlen oder falsch machen? Lassen Sie mich wissen, ob Sie weitere Details zum Layout oder zum Formular benötigen. Vielen Dank im Voraus!
Select
document.addEventListener('DOMContentLoaded', function() {
const productSelect = document.getElementById('productSelect');
const netPriceInput = document.getElementById('netUnitPrice');
productSelect.addEventListener('change', function() {
const selectedOption = this.options[this.selectedIndex];
const price = selectedOption.getAttribute('data-price');
if (price) {
netPriceInput.value = price;
}
});
});
< /code>
Ich habe auch ein Basis.html -Layout, das Bootstrap und andere Skripte lädt. Ich habe mir Sorgen gemacht, dass es vielleicht mit meinem Inline -Skript in Konflikt steht, aber ich habe keinen direkten Konflikt gefunden. Im Moment wirft das JavaScript keine Fehler in die Konsole, und die Datendatenpreisattribute sehen in der gerenderten HTML korrekt aus, aber die Eingabe aktualisiert nie. Könnte fehlen oder falsch machen? Lassen Sie mich wissen, ob Sie weitere Details zum Layout oder zum Formular benötigen. Vielen Dank im Voraus!