Error de tipo no detectado
Una función jQuery debe inicializarse después de que se hayan actualizado las opciones de envío, en la página de pago, a través de una llamada ajax y el evento personalizado de Woocommerce updated_shipping_method
ha sido activado.
Mi fragmento de jQuery está configurado para escuchar este evento, pero no funciona según lo previsto.
jQuery( document.body ).on( 'updated_shipping_method', function(){
// Code stuffs
// has the function initialized after the event trigger?
console.log('on updated_shipping_method: function fired');
});
he probado el updated_wc_div
evento personalizado también fue en vano.
Estoy usando un método similar, casi palabra por palabra, en la página del carrito para escuchar el activador de evento personalizado para updated_cart_totals
y funciona perfectamente. No estoy seguro de por qué este no es el caso de la página de pago.
Corregir evento personalizado: updated_checkout
El fragmento de código en cuestión estaba escuchando el evento personalizado de Woocommerce incorrecto.
El evento personalizado correcto para escuchar en este caso es updated_checkout
.
Al seleccionar un nuevo método de envío, Woocommerce activa una llamada ajax para actualizar los totales del carrito para reflejar el precio del método de envío seleccionado, luego activa updated_checkout
.
Así que si updated_checkout
se escucha, en lugar de updated_shipping_method
el script se activa según lo previsto.