Laravel 5:下拉列表如何显示页面最初加载的选定值

时间:2015-06-26 21:51:08

标签: laravel select drop-down-menu

我正在使用Laravel,我有一个下拉列表,它从加载页面和另一个文本字段的数据库中填充其选项。

然后在提交中我验证文本字段以避免空条目,验证基于Laravel的请求验证器。验证正确。

问题在于,当验证完成时(由于我将文本字段保持为空而不提交),它将返回到页面,但下拉列表仍然被用户选择最后一个选项,但在后面( sourcecode),它选择了原始加载的原始值。

我希望selectedIndex是加载页面中的原始文件,而不是最后选择的文件。我尝试使用javascript,但我没有运气,因为它已经作为selectedIndex,但对于用户来说,它仍然显示另一个选项。如果我手动刷新它仍然错误地显示所选的一个,我需要手动输入URL,以便正确显示。

解决这个“视觉”问题的好方法是什么?

这是控制器代码

public function update($user_id,GuardarBancoRequest $request)
{
   $cuenta = user::whereId($user_id)->first();

   $cuenta->nombrecompleto =  Input::get('completo');
     $temp =  Input::get('tipo');
     $cuenta->tipocuenta =  Input::get('tipo');
     $temp1 =  Input::get('banco');


     if ($temp == "1") {
         $cuenta->cuentaclabe = Input::get('clabehidden');
         $cuenta->cuentatarjeta = Input::get('cuentahidden');
     } else {
          $cuenta->cuentatarjeta = Input::get('cuentahidden');
          $cuenta->cuentaclabe = Input::get('clabehidden');
     }

     if ( $temp1 == "10") {
         $cuenta->otrobanco = Input::get('otro');
         $cuenta->banco = "10";
      } else {
         $cuenta->banco = Input::get('banco');
         $cuenta->save();
      }
    return Redirect::route('bancos.show',array(Auth::user()->id));
}

我所指的下拉列表是[tipo] one

1 个答案:

答案 0 :(得分:0)

如果没有机会查看你的代码,很难设定,但听起来就像你在验证后进行重定向一样 return redirect()->back()->withInput();导致字段预先填充页面上先前输入的值。如果有,请删除控制器中的withInput()部分。 否则,请注意除了您的问题之外发布您的代码,这将有所帮助。 (具有重定向的控制器部分和您具有下拉列表的视图)