0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【jquery,js】連動するオブジェクトを実装する [val,change,radioボタン] [js11_20210304]

Posted at

処理の概要

チェックボックスを変更すると、連動して別のチェックボックスにも同じ変更が施される。

処理のフロー:

今回は特に記述なし。

画面イメージ

画像1
画像2

ソースコード

index.html
<body>
       <div>
           【連動するチェックボックス】<br>
           同意する<input type="checkbox" id="interLockingCheck1"><br>
           会員になる<input type="checkbox" id="interLockingCheck2"><br>
       </div>
       <br><br>
       <div>
            【連動するラジオボタン】<br>
            子供<input type="radio" name="interLockingRadio1" value="1"><br>
            大人<input type="radio" name="interLockingRadio1" value="2"><br>
            <br>
            バス運賃(三ノ宮から神戸市北区):150円<input type="radio" name="interLockingRadio2" value="1"><br>
            バス運賃(三ノ宮から神戸市北区):300円<input type="radio" name="interLockingRadio2" value="2"><br>
        </div>
        <div id="sumValueOutput"></div>
</body>
main.js
$(function(){
    var sumValue = 0;

    $("#interLockingCheck1").click(function(){
        var lobjCheck = $("#interLockingCheck1").prop("checked");
        $("#interLockingCheck2").prop("checked",lobjCheck);
    });

    $("input[name=interLockingRadio1]").click(function(){
        var lobjRadio = $("input[name=interLockingRadio1]:checked").val();
        $("input[name=interLockingRadio2]").val([lobjRadio]);
    });

    $("input[name=interLockingRadio1]").change(function(){
        sumValue = 150 * $("input[name=interLockingRadio2]:checked").val();
        var lobjMessage = "バス運賃の合計は " + sumValue + " 円です。";
        $("#sumValueOutput").html(lobjMessage);
    });

});

ポイント

html:
なし
js:
(1)propは引数が1つの場合は、取得。引数が2つの場合は指定の属性を変更出来る
(2)チェックボックスから取得した値はすべて文字列なので、valに入力する場合は変換が必要。
(3)ラジオボタンで選択しているセレクタを選択する場合は「:checked」で選択できる。
(4)ラジオボタンのグルーピングは同じnameを付けること。

参考資料

JavaScript(仕事の現場でサッと使える!デザイン教科書) p60

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?