0

インデックスページにドロップダウンリストを作成しました。そのリストから1つの値を選択し、値が選択されていない場合はそれを検証します。そのコードは次のとおりです。

<form action="" method="post">
  <select value="state" name="state">
    <option selected="">---please enter---</option>
    <option value="1">andhra</option>
    <option value="2">thamil</option>
    <option value="3">kerela</option>
  </select>
</form>

上記のファイルの php コードは次のとおりです。

<?php
if(!empty($_POST['state'])) {
  $state = $_POST['state'];
}
else {
  echo "required";
}
?>

選択リストの最初のオプションを選択したくありませんが、選択するには入力してくださいが、使用したコードはその値を取得していますが、関連するコードがそのリストを検証する方法が必要ですか?

4

4 に答える 4

0

プレースホルダー オプションに属性を追加することを好みdisabledます。そのようにすると、ユーザーはドロップダウンをクリックしたときに何かを選択する必要があります。

<select value="state" name="state">
    <option selected disabled>---please enter---</option>
    <option value="1">andhra</option>
    <option value="2">thamil</option>
    <option value="3">kerela</option>
</select>

簡単なデモ: http://jsfiddle.net/hxxJZ/

于 2013-06-09T02:17:22.913 に答える
0

このようなものはトリックにすべきです:

<form action="" method="post">
  <select name="state">
    <option value="0" selected>---please enter---</option>
    <option value="1">andhra</option>
    <option value="2">thamil</option>
    <option value="3">kerela</option>
  </select>
</form>

php

<?php
if( 0 != $_POST['state'] ) {
  $state = $_POST['state'];
}
else {
  echo "required";
}
?>
于 2013-06-09T02:17:31.993 に答える
0

HTML が正しくありません。この行を編集してみてください

<option selected=""...

これに

<option selected value="">---
于 2013-06-09T02:18:05.527 に答える
0

select要素には (HTML) value 属性がないため、 を削除しvalue="state"ます。

selected属性は (または単に) である必要がありselected="selected"ますSELECTED

于 2013-06-09T02:19:28.827 に答える