PaymentRequest: shippingoptionchange-Event
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Nicht standardisiert: Diese Funktion ist nicht standardisiert und befindet sich nicht auf dem Weg zur Standardisierung. Verwenden Sie sie nicht auf Produktionsseiten, die dem Web ausgesetzt sind: Sie funktioniert nicht für alle Benutzer. Es kann auch große Inkompatibilitäten zwischen Implementierungen geben, und das Verhalten kann sich in Zukunft ändern.
Bei Zahlungsanforderungen, die Versandinformationen erfragen und für die Versandoptionen angeboten werden, wird das shippingoptionchange
-Ereignis an den PaymentRequest
gesendet, sobald der Benutzer eine Versandoption aus der Liste der verfügbaren Optionen auswählt.
Der String, der die aktuell ausgewählte Versandoption identifiziert, kann in der shippingOption
-Eigenschaft gefunden werden.
Dieses Ereignis ist nicht abbrechbar und hat keine Ereignisweiterleitung.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("shippingoptionchange", (event) => { })
onshippingoptionchange = (event) => { }
Ereignistyp
Ein PaymentRequestUpdateEvent
. Erbt von Event
.
Ereigniseigenschaften
Bietet nur die von Event
geerbten Eigenschaften.
Beispiele
Dieser Code-Snippet richtet einen Handler für das shippingoptionchange
-Ereignis ein. Der Code berechnet den Gesamtkostenbetrag für die Zahlung basierend auf der ausgewählten Versandoption neu. Wenn es beispielsweise drei Optionen gibt (wie "Kostenloser Bodentransport", "2-Tages-Luftpost" und "Nächster Tag"), wird bei jeder Auswahl einer dieser Optionen durch den Benutzer dieser Ereignishandler aufgerufen, um den Gesamtbetrag basierend auf der geänderten Versandoption neu zu berechnen.
paymentRequest.addEventListener(
"shippingoptionchange",
(event) => {
const value = calculateNewTotal(paymentRequest.shippingOption);
const total = {
currency: "EUR",
label: "Total due",
value,
};
event.updateWith({ total });
},
false,
);
Nach dem Aufruf einer benutzerdefinierten Funktion, calculateNewTotal()
, um den aktualisierten Gesamtbetrag basierend auf der neu ausgewählten Versandoption zu berechnen, wie in der shippingOption
angegeben. Der überarbeitete Gesamtbetrag wird durch Aufruf der Methode updateWith()
des Ereignisses an die Zahlungsanforderung zurückgegeben.
Sie können auch einen Ereignishandler für shippingoptionchange
erstellen, indem Sie seine entsprechende Ereignishandler-Eigenschaft, onshippingoptionchange
, verwenden:
paymentRequest.onshippingoptionchange = (event) => {
const value = calculateNewTotal(paymentRequest.shippingOption);
const total = {
currency: "EUR",
label: "Total due",
value,
};
event.updateWith({ total });
};