WordPress サイトがあり、jQuery コードのカスタム チャンクをサイトに追加したいと考えています。以下のコードは、ユーザーがラジオ ボタンを選択したときにトリガーされ、その変更をページ内の別の変更にリンクすることを意図しています。生成された DOM は要素に ID を設定するため、イベントを要素にバインドする作業に進みました。問題は、firebug を調べるとイベントがトリガーされることですが、関数がトリガーされません。
私はしようとしました:
- イベントバインディングをドキュメント内に配置する準備ができました...
- 外部ドキュメント準備完了...
- ヘッダーにスクリプトを追加しました....
- スクリプトをフッターに追加しました...
- イベントを呼び出すときに省略形「$」と jQuery の両方を使用する
- e.preventDefault() メソッドを試してみました
すべてのメソッドで同じ結果が得られる場合、関数はトリガーされません。また、さまざまなイベント(クリック、選択、変更...)を試しましたが、うまくいきませんでした。
スクリプトは次のとおりです。
<script>
jQuery(document).ready(function($) {
var processing = false;
$('#shipping_method_local_delivery').click(function(e){
e.preventDefault();
alert("this is the click");
});
$('#payment_method_rba_etomitreba').change(function(){
if (processing) {return;}
processing = true;
$('#shipping_method_local_delivery').click();
processing = false;
});
$('#shipping_method_local_pickup').change(function(){
if (processing) {return;}
processing = true;
$('#payment_method_cod').click();
processing = false;
});
$('#payment_method_cod').change(function(){
if (processing) {return;}
processing = true;
$('#shipping_method_local_pickup').click();
processing = false;
});
$('#payment_method_bacs').change(function(){
if (processing) {return;}
processing = true;
$('#shipping_method_local_delivery').click();
processing = false;
});
});
</script>