ラジオボタンのいずれかがYes
として選択されている場合、下のJavascriptコードはID=adjustChk
を持つ隠しフィールドの値を 'y'に更新するはずです。JavaScriptが隠しフィールドを正しく更新しない
期待どおりにフィールドを更新しますが、ラジオのいずれかが 'n'に戻された場合、非表示フィールドも 'n'に更新されます。 'y'に遭遇したときにbreakがforループを終了することを期待しましたが、これは私が望むやり方では動作しません。
window.onload = function() {
\t \t var ele = document.getElementsByTagName("input");
\t \t var hid = document.getElementById("adjustChk");
\t \t var chkItm = "";
\t \t for(var i = 0, item; item = ele[i]; i++){
\t \t \t item.addEventListener("click", function() {
\t \t \t \t chkItm = this.value;
\t \t \t \t for (var i = 0; i < ele.length; i++){
\t \t \t \t if(chkItm === 'y'){
\t \t \t \t \t \t hid.value = 'y';
\t \t \t \t \t \t break;
\t \t \t \t \t } else {
\t \t \t \t hid.value = 'n';
\t \t \t \t \t }
\t \t \t \t };
\t \t \t });
\t \t };
\t };
<div>
Yes<input type="radio" name="radio1" value="y" />
No<input type="radio" name="radio1" value="n" checked="checked" />
</div>
<div>
Yes<input type="radio" name="radio2" value="y" />
No<input type="radio" name="radio2" value="n" checked="checked" />
</div>
<div>
Yes<input type="radio" name="radio3" value="y" />
No<input type="radio" name="radio3" value="n" checked="checked" />
</div>
<input id="adjustChk" type="hidden" value="n" />
も、それを見て参考になる無地Jasvascript使用して、より良い方法があるので、もし私はまだ、JSのこつを取得しています!
これは素晴らしいです!そこにあるさまざまなオプションを見るのは良いことです。引き続きforループを使用しましたが、より詳細に他のものを調べます。ありがとうございました。 – Benny