PaymentRequest: shippingoptionchange Event
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.>
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Für Zahlungsanforderungen, die Versandinformationen anfordern und für die Versandoptionen angeboten werden, wird das shippingoptionchange-Ereignis an die PaymentRequest gesendet, wann immer der Benutzer eine Versandoption aus der Liste der verfügbaren Optionen auswählt.
Der String, der die aktuell ausgewählte Versandoption identifiziert, ist in der shippingOption Eigenschaft zu finden.
Dieses Ereignis kann nicht abgebrochen werden und blubbert nicht.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Event-Handler-Eigenschaft.
addEventListener("shippingoptionchange", (event) => { })
onshippingoptionchange = (event) => { }
Ereignistyp
Ein PaymentRequestUpdateEvent. Erbt von Event.
Beispiele
Dieses Codebeispiel richtet einen Handler für das shippingoptionchange-Ereignis ein. Der Code berechnet die Gesamtkosten für die Zahlung basierend auf der ausgewählten Versandoption neu. Zum Beispiel, wenn es drei Optionen gibt (wie "Kostenloser Bodentransport", "Luftversand in 2 Tagen" und "Nächster Tag"), wird jedes Mal, wenn der Benutzer eine dieser Optionen auswählt, 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 });
});
Nach dem Aufruf einer benutzerdefinierten Funktion, calculateNewTotal(), um den aktualisierten Gesamtbetrag basierend auf der neu ausgewählten Versandoption zu berechnen, wie sie durch die shippingOption angegeben ist. Der überarbeitete Gesamtbetrag wird durch den Aufruf der updateWith() Methode des Ereignisses zurück an die Zahlungsanforderung übermittelt.
Sie können auch einen Ereignishandler für shippingoptionchange erstellen, indem Sie dessen entsprechende Ereignishandlereigenschaft, onshippingoptionchange, verwenden:
paymentRequest.onshippingoptionchange = (event) => {
const value = calculateNewTotal(paymentRequest.shippingOption);
const total = {
currency: "EUR",
label: "Total due",
value,
};
event.updateWith({ total });
};