勉強したことのメモ

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のfind実行時に複数のセレクタを指定する方法

jQueryのfind()実行時に複数のセレクタを指定したい。 <div ...

Javascript / jQueryにて特定の要素内の文字数が〇文字以上の場合に丸める方法

サイトの特定の要素内の文字数が〇文字以上の場合に「コンテンツコンテ……」のように ...

ajaxで複数のデータを渡したい

やりたい事はajaxで複数のデータを渡したい。 ■送信側 var data = ...

JSやjQueryで動的に追加した要素に対して「slick」でスライダーを実行する方法

外部サーバからAjax等で画像URLを取得したものをimgタグとしてページ内に描 ...

CodeIgniter4 & jQueryを用いて同一サイト内でajax通信する方法

CodeIgniter4.4.4 & jQueryを用いて同一サイト内で ...