質問: デートピッカーによるwoocommerceチェックアウトの合計 チェックアウトページに新しい日付フィールドを追加しました。日付ベースの配送料計算を作成したいのですが。日付フィールドは ' update_totals_on_change 'クラスを持ちます。これを手動で変更すると、合計が予想どおりに再計算されます。残念ながら、このフィールドでjqueryの日付ピッカーを使用すると、合計が更新されません。私の意見では、datepickerのコールバックで update_checkout メソッドをトリガーするべきです。 woocommerceのcheckout.jsスクリプトには input_changed()があります。 これは $( 'body').trigger( 'update_checkout')を起動します。 。しかし、日付ピッカーのコールバックから直接呼び出すことはできません。jquery("#delivery_date").datepicker({ mindate: new date(), firstday: 1, onselect: function () { $( 'body' ).trigger( 'update_checkout' ); } }); datepickerでupdate_totals_on_change機能を使用するにはどうすればよいですか?編集する change() 関数をトリガーして試しましたが、コールバック関数が呼び出されると日付ピッカーが動作しなくなります。jquery("#delivery_date").datepicker({ mindate: new date(), firstday: 1, onselect: function () { $(this).change(); } });
回答: スタンドアロンコールバックでトリガをラップしてみてください。jquery(function() { jquery( "#datetimepicker" ).datetimepicker({ onclose:function(ct,$i){ my_callback(); } }); function my_callback() { jquery( 'body' ).trigger( 'update_checkout' ); } });