※ ChatGPTを利用し、要約された質問です(原文:JavaScriptで、SELECTの値で、TEXTを入力可と入力不可)
JavaScriptでSELECTの値でTEXTを入力可と入力不可に分ける方法
このQ&Aのポイント
JavaScriptで、SELECTの値に応じて、TEXT入力欄の入力可と入力不可を切り替えたいです。
指定したSELECT要素の値が特定の値と一致する場合、関連するTEXT入力欄を入力不可に設定します。
既存のフォームに、JavaScriptを使用して制御を追加し、SELECT要素の値に基づいてTEXT入力欄の状態を変更することができます。
JavaScriptで、SELECTの値で、TEXTを入力可と入力不可
JavaScriptで、SELECTの値で、TEXTを入力可と入力不可に分けたい。
現在、以下のフォームを作成しています。
<form method="post" action="/" name="formname">
<select name="test[0]" size="1" onchange="selectChange(0)">
<option value="A" selected>A</option>
<option value="B" >B</option>
<option value="C" >C</option>
<option value="D" >D</option>
</select>
<select name="test[1]" size="1" onchange="selectChange(1)">
<option value="A" selected>A</option>
<option value="B" >B</option>
<option value="C" >C</option>
<option value="D" >D</option>
</select>
<br>
<input name="txt[0]" type="text" value="" size="10">
<br>
<input name="txt[1]" type="text" value="" size="10">
</form>
このフォームで、例えば、selectのtest[0]でvalueの「C」が選択された場合、
txt[0]が入力できないようにしたいと考えています。
また同様に、test[1]でvalueの「C」が選択された場合は、txt[1]が入力出来ないように
したいです。
以下のようなJavaScriptを書きましたが、上手く動きません。
function selectChange(value) {
var answer = document.formname.elements["test[value]"].selectedIndex;
if(answer == "C") {
document.formname.elemens["txt[value]"].disabled = false;
} else {
document.formname.elemens["txt[value]"].disabled = true;
}
}
どなたか教授頂けましたら、幸いです。
よろしくお願いします。
お礼
"test[" + value + "]"の方法で上手くいきました。 一度、「C」を選択した後で「A」に戻しても、入力出来ました。 ありがとうございました!