質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

132閲覧

jQueryでオブジェクトにイベントを動的に設定する

uer03108

総合スコア194

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2018/10/23 06:06

編集2018/10/23 06:55

jQueryでonイベントを動的に設定することは出来るでしょうか。

設定したいこと

javascript

1 $("#idObject") 2 //イベント 3 .on('event_1', func_1()) 4 .on('event_2', func_2()) 5 .on('event_3', func_3()) 6

関数

javascript

1 2 //イベント関数 3 let func_1 = function(){}; 4 let func_2 = function(){}; 5 let func_3 = function(){}; 6 7 //イベント名と関数の配列 8 let aryEvent = [ {event : "event_1", function : func_1} 9 , {event : "event_2", function : func_2} 10 , {event : "event_3", function : func_3}]; 11 12 //イベントを動的に設定する関数 13 setEvent("idObject", aryEvent); 14 15 //設定したい内容 16 $("#idObject") 17 //イベント 18 .on('event_1', func_1) 19 .on('event_2', func_2) 20 .on('event_3', func_3)

イベントの数と内容が動的に変わるので、配列にして登録しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2018/10/23 06:11

{"event_1", func_1}が文法的に正しくないですが、配列のつもりでしょうか、オブジェクトのつもりでしょうか。
uer03108

2018/10/23 06:50

申し訳ありません。連想配列です。修正いたしました。
guest

回答1

0

ベストアンサー

とりあえずコールバックはカッコを付けないで処理してください

javascript

1 $("#idObject") 2 .on('event_1', func_1) 3 .on('event_2', func_2) 4 .on('event_3', func_3)

もしくは、オブジェクトとして列記する

javascript

1 $("#idObject") 2 .on({ 3 'event_1':func_1, 4 'event_2':func_2, 5 'event_3':func_3, 6 });

投稿2018/10/23 06:21

編集2018/10/23 06:23
yambejp

総合スコア114843

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問