質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

527閲覧

Javascriptを利用してラジオボタンのチェック状態を変更したいが、・・・

WebFirster

総合スコア3

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2022/05/13 05:20

Javascriptでラジオボタンの選択状態を変えたいのですが、その選択状態が変わりません。
その対策方法をご教授ください。

以下のコードが現象を確認しているコードです。

<head> <script src="http://code.jquery.com/jquery-3.2.1.min.js"></script> <script type="text/javascript"> $(function() { $('button[name="save"]').click(function(){ var data_res = 5 ; $("input[name='typeid']").val(data_res) ; $("#result").text("value = " + $("input[name='typeid']").val()) ; }); }); </script> </head> <body> <button type="button" name="save" >登 録</button> <br> <label><input type="radio" name="typeid" value="0" checked/>初期値</label><br> <label><input type="radio" name="typeid" value="1" />その1</label><br> <label><input type="radio" name="typeid" value="2" />その2</label><br> <label><input type="radio" name="typeid" value="3" />その3</label><br> <label><input type="radio" name="typeid" value="4" />その4</label><br> <label><input type="radio" name="typeid" value="5" />その5</label><br> <label><input type="radio" name="typeid" value="6" />その6</label><br> <br> <div id="result"></div> </body>

ボタンを押すと、正常に動作すればラジオボタンの選択状態は初期値からその5へ変わるはずです。
実際、最後に”typeid"の値を参照しており、5の値が入っているのは確かと思います。
なお、確認しているマシンはWindows10、ブラウザはedge/chromeです。

回答としてはそれぞれのチェックボックスのIDを持たせてIDで設定する方法を指摘するかもしれませんが、実コード上でsmartyを利用しているため、IDが利用できませんので、解決方法にはならないと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

$("input[name='typeid']").val(data_res) ;

それは一番やってはだめなやつです
nameがtypeidのすべてのinput要素のvalueをdata_resに変えています
こうしてください

javascript

1$(function() { 2 $('button[name="save"]').click(function(){ 3 var data_res = 5 ; 4 $("input[name='typeid'][value="+data_res+"]").prop('checked',true); 5 $("#result").text("value = " + $("input[name='typeid']:checked").val()) ; 6 }); 7});

投稿2022/05/13 05:30

yambejp

総合スコア114829

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WebFirster

2022/05/13 05:37

ありがとうございます。ラジオボタンは少し特殊な設定が必要ということですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問