我的主页包含一个下拉菜单,允许用户选择一个类别,并根据从下拉菜单中选择的选项显示结果。
它目前在更新和显示正确的结果方面工作正常,但现在我遇到了一个小问题,我希望下拉菜单在所选类别上保持选中状态。通常我会在我的视图中添加一行简单的代码,例如
{{ Form::label('category', 'Category:') }}
{{ Form::select('category', array('option1' => 'Option1', 'option2' => 'Option2'), $video->category) }}
其中$video
是控制器中使用的模型。
然而,这种情况有点不同,因为我需要通过'类别'从我的控制器中变量,以便在用户做出选择后,下拉菜单将保留在所选类别上。
控制器:
public function index()
{
$vdo = Video::query();
$pic = Picture::query();
if($category = Input::get('category')){
$vdo->where('category', $category);
$pic->where('category', $category);
}
$allvids = $vdo->paginate(10);
$allpics = $pic->paginate(10);
$data = compact('allvids','allpics');
$this->layout->content = \View::make('home.pics_vids_overview',$data)->with('category', Input::get('category'));
}
查看:
{{Form::open(array('route' => 'overview_select', 'files' => true)) }}
<div class="form-group">
{{ Form::label('category', 'Category:') }}
{{ Form::select('category', array('Category1' => 'Category1', 'Category2' => 'Category2', 'Category3' => 'Category3', 'Category4' => 'Category4'), array('class' => 'form-control')) }}
我已经尝试了几种方法来传递所选择的类别&#39;变量返回到下拉列表,以便在用户做出选择后它将保留在所选选项上,但它们都没有为我工作。任何帮助是极大的赞赏!
答案 0 :(得分:1)
你可以试试这个:
{{
Form::select(
'category',
array('Category1' => 'Category1', 'Category2' => 'Category2'),
(isset($category) ? $category : 'Category1'),
array('class' => 'form-control')
)
}}
答案 1 :(得分:0)
使用Form::model
代替Form::open
将模型绑定到表单,它会自动获取模型中的任何值:
{{ Form::model(array('route' => 'overview_select', 'files' => true)) }}