1

次のオプションを含むドロップダウンリストが必要です。オプションが選択されていない場合は、情報を選択してください。以下のコードで実装しました。1 つのオプションが選択されると、フォームが送信されます。しかし、問題は、ページに戻って最初のオプション、つまり --Please Select -- を選択すると、そのオプションに対してもフォームが送信されることです。オプションが選択されていないときに --please select-- オプションを表示し、その特定の --please select-- オプションのフォームを送信しないようにするための解決策はありますか??

<select onchange="this.form.submit()">
    <option>--Please Select --</option>
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
</select>
4

4 に答える 4

5

使用できます<option selected="selected" disabled="true">

選択するとデフォルトになり、無効にするとクリックされなくなります。

デモ

<select onchange="this.form.submit()">
  <option selected="selected" disabled="true">--Please Select --</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
于 2013-01-23T17:19:58.520 に答える
1

どうぞ:)

<select onchange="if(this.value!='') this.form.submit();">
    <option value="">--Please Select --</option>
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
</select>
于 2013-01-23T17:21:47.777 に答える
1

「選択してください」オプションを無効にします。このようにして、オプションは最初に選択されますが、再度選択することはできません。

<select onchange="this.form.submit()">
    <option disabled="true">--Please Select --</option>
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
</select>
于 2013-01-23T17:20:12.340 に答える
1

あなたはjavascriptでそれを行うことができます。

<select onchange="if (this.selectedIndex !=0) { this.form.submit(); }">
    <option>--Please Select --</option>
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
</select>

これはphpであるため、選択オプションを動的に生成する可能性が高いため、コードを少し変更する必要があるかもしれません.

于 2013-01-23T17:32:15.473 に答える