0

dd1(親)、dd2、dd3、dd4 という 4 つのドロップダウンがあり、最後の 3 つのドロップダウンは初期値として null です。

ajax を使用して、親ドロップダウンから最後の 3 つのドロップダウンをフェッチします。

php validation(mkValid) を使用して、ドロップダウンが空かどうかを検証しました。

問題は、最初の 2 つのドロップダウンで値を選択し、送信をクリックすると検証されますが、ページが更新され、最初の 2 つのドロップダウンで選択した値が空になることです。 values.jquery で ajax.stop() を使用しましたが、use.Help.! は使用しませんでした。

4

2 に答える 2

0

次のように実行できます。

<select name="dropdown">
   <option value="1" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "1" ? "selected"; ?> >Option 1</option>
   <option value="2" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "2" ? "selected"; ?> >Option 2</option>
   <option value="3" <?php echo isset($_POST["dropdown"]) && $_POST["dropdown"] == "3" ? "selected"; ?> >Option 3</option>
</select>

PHPを参照できます。選択したオプションをドロップダウンから保持して、送信時に選択したままにするにはどうすればよいですか? 詳細については

EDIT:あなたがSmartyを使用していることを読みました。その場合、次を使用できます:

<select name="dropdown">
   <option value="1" {if !empty($dropdown) && $dropdown == "1"}selected{/if}>Option 1</option>
   <option value="2" {if !empty($dropdown) && $dropdown == "2"}selected{/if}>Option 2</option>
   <option value="3" {if !empty($dropdown) && $dropdown == "3"}selected{/if}>Option 3</option>
</select>

そしてあなたのPHPで:

global $smarty;

if(isset($_POST["dropdown"])){
    //validation
    $smarty->assign("dropdown", $_POST["dropdown"]);
}
于 2013-09-05T12:26:06.913 に答える