2016-03-27 16 views
0

私はいくつかの入力フィールドといくつかのドロップダウンオプションを持つselect要素を持つフォームを持っています。ユーザーは入力フィールドを入力し、ドロップダウン・オプションの1つを選択してフォームを送信します。フォームのPHPハンドラはフォーム入力をデータベースに保存し、これらの入力からページを作成します。ビルドされたページの編集リンクは、フォームが最後に送信されたときのフィールドにプリセットされたフォームページに戻ります。そのため、最後に送信された状態から編集を開始できます。select要素のプリセット

入力フィールドをプリセットするのは簡単です。value=<?php echo [saved value from last submission];?>を指定するだけですが、最後に選択した値にプリセットするのは簡単ではありません。私はjQueryが#4の選択#id要素をプリセットする$('select#id').val("4");を持っていることを知っていますが、フォームページが再度読み込まれたときにこれをどのようにトリガできますか? value =を設定して入力をプリセットすると、jQueryで感知できるものが生成されないようです。

ありがとうございます。

答えて

1

選択するオプションの1つに属性selectedを設定します。だから、<option <?php echo 'selected="selected"';?>>4</option>のようなものです。

編集:

どちらのあなたは、ループ、配列の値を持つ1つのselected属性を現在のオプションは、ユーザーが選択したものであった場合は、各反復をチェックし、設定のオプションを生成することができます私はあなたの編集したソリューションは、私はあなたの信用を与えた仕事だと思う

<select name="number"> 
    <option value="1" <?php echo ($_POST['number'] == '1') ? 'selected="selected"' : ''; ?>>1</option> 
    <option value="2" <?php echo ($_POST['number'] == '2') ? 'selected="selected"' : ''; ?>>2</option> 
    <option value="3" <?php echo ($_POST['number'] == '3') ? 'selected="selected"' : ''; ?>>3</option> 
    <option value="4" <?php echo ($_POST['number'] == '4') ? 'selected="selected"' : ''; ?>>4</option> 
</select> 
+0

しかし、今どのオプションを選択するのですか?私は設定したいオプションの値を含むphp変数を持っていますが、それをどのように使って右に行くのですか?

+0

これを達成するための2つの提案で答えが更新されました。 – user2570380

0

user2570380:オプション、またはあなただけの次なので、エレガントではないが、アプローチを使用することができます。しかし、私はもっとエレガントな作品を見つけました。私は一番下に置かれてきた私のPHPファイルのHTMLの場合:ここで

<script> 
     jQuery('select#age_group').val(<?php echo $age_group?>); 
</script> 

</body> 

select#age_group私はプリセットと$age_groupしたいselect要素は、私はselect要素に設定したいPHPに入ってくる値です。