ページのトップレベルで定義される変数は、window["変数名"] で参照する事ができます。 ここでは、変数に対して直接 JSON を記述していますが、外部で定義したテキストを jQuery のajax で取得して JSON オブジェクトを使用するともっと自由度の高いイベント登録をする事ができます ▼ JSON 文字列変換例alert( JSON.parse('{"abc":"こんにちは"}').abc );
<script> if ( !window.jQuery ) { document.write("<"+"script src=\"//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js\"></"+"script>"); } </script> <script> var event_lst = { "target_a" : function() { alert(this.id); // this はイベントを起こした要素 console.dir(this); }, "target_b" : function() { alert(this.id); }, "target_c" : function() { alert(this.id); }, "target_d" : function() { alert(this.id); }, "target_e" : function() { alert(this.id); } }; $(function(){ $( ".event_lst" ).each(function(index) { // this は参照した DOM $( this ).val(this.id); // event_lst の function をイベントに登録 // var event_lst は トップで定義しているので、 // window["event_lst"] で参照できます $( this ).click( window[this.className][this.id] ); }); }); </script> <input class="event_lst" type="button" id="target_a"><br> <input class="event_lst" type="button" id="target_b"><br> <input class="event_lst" type="button" id="target_c"><br> <input class="event_lst" type="button" id="target_d"><br> <input class="event_lst" type="button" id="target_e"><br>
▼ 実際の実行
タグ:jquery
|
【jQueryの最新記事】
- jQuery の $.get を使用した ajax のテンプレート
- jquery.balloon.js を使用した簡単なバルーン( マウスオーバーで表示する追加説明用 )の作り方
- jQuery による link 要素の追加と削除を bootstrap.css でリアルタイムチェック
- FileReader で、ローカルの CSV を読み込んで(shift_jis)、jQuery でテーブルを作成して表示する
- jQuery + bootstrap.js で ajax の GET と POST を使用した DB テーブルを更新する UI テンプレート
- jQuery : 貼り付けるだけで、ページ右下にページ先頭にジャンプするリンクを表示させる( アニメーションは無し )
- STYLE 要素を追加して、CSS テキストをセットして、jQuery で CSS に important 指定を追加する。
- ページの右下に、ページの先頭へ移動するボタンを追加する(ページの先頭から 200px までは、スクロールボタンを表示しない)
- テーブルのTDをクリックしたら、INPUT で値を変更可能にして、元の値と違うものにはフラグを立てる処理を絵で書いて説明してみました
- jQuery を使用してサーバから取得した JSON データを元にテーブルを作成し、その後から列を加工する
- JSON 配列を WEB より読み出して jQuery で動的にテーブルを作成して表示する
- jQuery UI の Datepicker Widget のオプション
- FormData を使用して、jQuery で配列として PHP に送る
- 必要なデータを隠しリストボックス( multiple ) に jQuery で追加して配列として PHP に送る
- Android Studio の追加日本語化用に、キャラクタセットに依存しないコード文字列を作成するツールを作成しました
- 画像ファイルが存在した時のみ、表示する jQuery の記述
- jQuery で mobile(スマホ) かどうかのチェックをしたくて調べたら、Stack Overflow の記事でいろんな方法が答えられていました。
- jQuery と FileReader オブジェクトによる、ローカルの複数画像ファイルのプレビュー表示
- とても面白くて簡単な jQuery のクリックしたコンテンツ以外を暗転(Blackout) するサンプル
- jQuery で、左右に並んだリストボックスの右側のデーターをダブルクリックしたら左へ転送してソートする処理