私はさまざまなオプションを持つ選択フォーム要素を持っています。オプションの1つは「その他」です。したがって、「その他」を選択すると、ユーザがリストにない値を入力するための隠しフィールドが表示されます。すべてうまく動作します。問題は、ユーザーが他のオプションのいずれかを選択してフォームを送信したときに値が渡されない場合です。一方、「その他」オプションが選択され、テキストボックスを塗りつぶしてからフォームを送信すると、テキストボックスの値が渡されます。オプションが選択された場合に表示される非表示のフィールドがある場合、私のselect要素の値を取得できません
が、これは選択と非表示のテキストフィールドです:
<select name="memo" required class="newtxtbox" id="memo" onchange='checkvalue()'>
<option disabled="disabled" selected="selected">Select</option>
<option value="Donation for Bulletin">Bulletin</option>
<option value="Donation for Care Ministry">Care Ministry</option>
<option value="Donation for Cathedral Choir">Cathedral Choir</option>
<option value="Donation for Other">Other - (please specify below) </option>
</select>
<input type="text" style="display:none" name="memo" id="other">
、これはJavaScriptのです:私は小さな何かが足りないのですが、それが何であるかを把握することはできません確信して
function checkvalue()
{
if(document.getElementById('memo').value == 'Donation for Other') {
document.getElementById('other').style.display='block';
}
else {
document.getElementById('other').style.display='none';
}
}
。
これに対する簡単な解決策は、(あなたが同じ名前を持つ二つの入力要素でフォームを送信するが、わずかに多くの作業を必要とすることができます) 'otherMemo'にご入力フィールドの名前を変更することであり、サーバ上で、「other for donation」が選択されている場合は、パラメータ名「otherMemo」で値を取得します。 – KarelG
@Lindow 2はいできます。それがどういうものか見てみましょう –
@KarelG私は仕事のために現在のコードを手に入れることができなければ、最後の手段として考えました –