勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

jQueryでページ表示時にラジオボタンやチェックボックスにcheckedがついている場合にイベントを実行する方法

  jQuery JavaScript

ラジオボタンやチェックボックスをチェックした際に、jQuery側で何らかのイベントを実行するプログラムがあったとする。ページ表示時にラジオボタン等に最初からcheckedが付与されていた場合にもそのイベントを実行させたい。このような場合PHPを併用していたけどjQueryだけで対応できるみたい。以下に対応方法をメモ。

 

対応方法

ソースコード

<label>
    <input type="radio" name="radio" value="A" checked>A
</label>
<label>
    <input type="radio" name="radio" value="B">B
</label>
<div id="result"></div>

<script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script>
$(function(){
    $(`input[name="radio"]`).on('change', function(){
        if( $('input[name="radio"]:checked').val() ){
            $(`#result`).html(`${$('input[name="radio"]:checked').val()}を選択中`);
        }
    }).change();
});
</script>

解説等

ページ表示時にchange()で「$(`input[name="radio"]`).on('change'」部分が実行される。

それとは別にラジオボタンを手動で変更した場合も、もちろん「$(`input[name="radio"]`).on('change'」部分が実行される。

 

change

リファレンス

https://js.studio-kingdom.com/jquery/events/change#2

 - jQuery JavaScript

  関連記事

jQueryでUNIXタイムスタンプの取得
jQueryでUNIXタイムスタンプの取得

jQueryでUNIXタイムスタンプを取得したい場合、 $.now()だけで取得 ...

要素の表示or非表示
要素の表示or非表示

今まで要素の表示or非表示をCSSで操作する際、 display:none; / ...

DateTimePickerで特定日にClassを付与&選択不可にする方法
DateTimePickerで特定日にClassを付与&選択不可にする方法

jQueryプラグインのDateTimePikerで特定の日にClassを付与し ...

tableタグでスクロール時にヘッダーを残して表示する方法(jquery-decapitate)
tableタグでスクロール時にヘッダーを残して表示する方法(jquery-decapitate)

テーブルタグ内で縦にスクロールした際にテーブルヘッダー部分は表示させたままテーブ ...

スマホ対応のjQueryのカラーピッカープラグイン「excolor」の利用方法
スマホ対応のjQueryのカラーピッカープラグイン「excolor」の利用方法

以前の記事でカラーピッカープラグインのことを書いたけどスマホでは使えない。なので ...