ITコラム

mv11998

ITコラム

2018.09.26

jQuery【change】値 変更時にイベントを発生させるchangeメソッド

jQuery の change メソッドは、値が変更された際にイベントを発生させるメソッドです。
今回は、jQuery の change メソッドの使用方法について解説いたします。

1. change メソッド

 
change メソッドは、値が変更された際にイベントを発生させるメソッドです。

change メソッドは、引数によって 3 通りの記述方法があります。

$(セレクタ).change( );

$(セレクタ).change( handler( eventObject ) );

$(セレクタ).change( [ eventData ], handler( eventObject ) );

引数なしの「.change( )」は、「.trigger("change")」の省略形です。
(trigger メソッドの使用方法についてはjQuery【 trigger 】手動でイベントを発生させる trigger メソッドをご参照下さい。)

また、「.change( handler( eventObject ) )」及び「.change( [ eventData ], handler( eventObject ) )」は、「on( "change", handler )」の省略形です。
(on メソッドの使用方法についてはjQuery【 on 】on メソッドの使い方をご参照下さい。)

change メソッドの引数の内容は、それぞれ以下の通りです。

.change( handler( eventObject ) )
handler( eventObject )
イベント発生時に実行する処理を関数として指定

 

.change( [ eventData ], handler( eventObject ) )
[ eventData ]
イベントハンドラに渡すデータをマップ値で指定

handler( eventObject )
イベント発生時に実行する処理を関数として指定

▲目次へ戻る

 

2. change メソッドの使い方

 
change メソッドを使用して、値が変わったタイミングでイベントを発生させます。
次のラジオボタンをいくつかクリックしてみて下さい。

03/21~ 04/19 04/20~05/20 05/21~06/21

06/22~07/22 07/23~08/22 08/23~09/22

09/23~10/23 10/24~11/22 11/23~12/21

12/22~01/19 01/20~02/18 02/19~03/20

 

 
上のサンプルのソースコードは次の通りです。

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
<!--
$(function() {

  $("[name='wk_rd']").change(function() {
 
    $("#out1").text($(this).val());

  });
});
//-->
</script>
<div style="background-color:#CCC; padding:20px;">
  <div style="display:inline-flex; align-items:center;">
    <input type="radio" name="wk_rd" value="おひつじ座">03/21~ 04/19 
    <input type="radio" name="wk_rd" value="おうし座">04/20~05/20 
    <input type="radio" name="wk_rd" value="ふたご座">05/21~06/21
  </div><br>
  <div style="display:inline-flex; align-items:center;">
    <input type="radio" name="wk_rd" value="かに座">06/22~07/22 
    <input type="radio" name="wk_rd" value="しし座">07/23~08/22 
    <input type="radio" name="wk_rd" value="おとめ座">08/23~09/22
  </div><br>
  <div style="display:inline-flex; align-items:center;">
    <input type="radio" name="wk_rd" value="てんびん座">09/23~10/23 
    <input type="radio" name="wk_rd" value="さそり座">10/24~11/22 
    <input type="radio" name="wk_rd" value="いて座">11/23~12/21
  </div><br>
  <div style="display:inline-flex; align-items:center;">
    <input type="radio" name="wk_rd" value="やぎ座">12/22~01/19 
    <input type="radio" name="wk_rd" value="みずがめ座">01/20~02/18 
    <input type="radio" name="wk_rd" value="うお座">02/19~03/20
  </div><br>
  <div id="out1" style="background-color:#666; color:#FFF; padding:0px 20px;"> </div>
</div>

上のサンプルでは、change メソッドの対象となるセレクタを「$("[name='wk_rd']")」として name 属性で指定していますが、ページ内でラジオボタンの使用が1カ所のみの場合は「$("input[type='radio']")」のようなセレクタの指定方法もあります。

また、上のサンプルでは ラジオボタンの value 値に 星座名を直接設定していますが、value 値には数字や英字の単純な値を設定しておいて、change メソッド内で 次のような処理を行うのが一般的です。

$("[name='wk_rd']").change(function() {
  if ($(this).val() == "1")
    $("#out1").text("おひつじ座");
});

▲目次へ戻る

3. まとめ

jQueryのchange メソッドについて、いかがでしたでしょうか。

「Webプログラマになりたいけど、独力では限界がある」と感じている方には、「プログラマカレッジ」がおすすめです。
プログラマカレッジ」は本気でプログラマを目指す方のための、就職支援付き、受講料無料のプログラミングスクールです。

今回ご紹介した「jQuery」を含む豊富なカリキュラムで、IT初心者からWebプログラマとして就職するまで、プロが完全にサポートします。
本気でプログラマとして就職・転職したいという方は、一度のぞいてみてはいかがでしょうか。

→ 就職支援付き無料プログラミングスクール「プログラマカレッジ

▲目次へ戻る

卒業生の声

SHARE

最新記事

無料相談する

INTERNOUS,inc. All rights reserved.