質問: ●状況 ブラウザ上にボタンAがあります。(text:編集、クラス:edit) クラスeditだと処理Xを、クラスupdateだと処理Yを行うJavaScript Clickイベントを設定しています。 ボタンAを押下すると処理Xを行い、ボタンAの表示を[編集]から[更新]に変更してクラスもeditからupdateに変更します。 次にボタンAを押下すると処理Yを実行したいのですが、処理Xが実行されてしまいます。ブラウザデバックしてもクラスは変更されています。 それらしい原因、対策がわかるかたアドバイスお願いいたします。 画面にデータが100件あるとするとボタンAも100個あります。
回答: > > クラスeditだと処理Xを、クラスupdateだと処理Yを行うJavaScript Clickイベントを設定しています。 > > > イベントの与え方によっては、**イベントをセットする時点**でのクラスをみて判断することとなってしまうので、後からクラスだけ切り替えてもイベントはそのままになります。 なので、**イベントハンドラの中で**クラスをチェックして処理を切り分ける、というのが適当かもしれません。