1

HTMLフォームとselectステートメントがある場合、

<form method="post">
<select name="sortOrder" onchange="form.submit()">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select></form>

そして、選択に応じていくつかのものを実行するphp switchステートメント、

switch($_POST['sortOrder']){
case '1':
//execute this
break;
case '2':
//execute this
break;
case '3':
//execute this
break;

ページの読み込み時にデフォルトでオプション 1 を読み込むようにします。残念ながら、ページが読み込まれると、オプションを選択するまで何も表示されず、常にデフォルトでオプション 1 になるため、onchange select をオプション 1 に実行することもできません。onload と onchange を同時に使用してみましたが、おそらくやり方がまずいと思います。うまくいきませんでした。私は検索してきましたが、私に固有の答えが見つかりません。

4

1 に答える 1

1
<form method="post">
<select name="sortOrder" onchange="form.submit()">
<option value="0">-</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select></form>

Php:

if(!isset($_POST['sortOrder']) {
 $sortOrder = 1;
} else {
 $sortOrder = $_POST['sortOrder'];
}
switch($sortOrder){
case '1':
//execute this
break;
case '2':
//execute this
break;
case '3':
//execute this
break;

そのため、何かが選択されている場合はデフォルトが 1 であることを PHP に伝えるので、オプション値 0 を使用する必要はありません。

このページをロードするときに別のページをロードしますか? それとも、この の後に 1 の何かを入れたいですか?

于 2013-03-12T11:34:15.437 に答える