选择下拉列表时,Laravel表单使用LaravelCollection重定向到带参数的URL

时间:2018-04-06 04:55:36

标签: laravel redirect routes laravelcollective

在我的刀片中,我有以下下拉列表

{!! Form::select('plans', $named_plans, null,['class' => 'form-control'] ) !!}

由控制器传递的名为$named_plans的列表填充。到现在为止还挺好。

我需要从下拉列表中获取用户选择的值,并将其作为参数添加到URL。我无法弄清楚(并且LaravelCollective文档最多是最小的)如何将所选字符串附加到URL(或路由)并将用户重定向到那里。与下拉菜单的工作方式类似。

例如,如果用户从下拉列表中选择了"foo",我想将其发送到mylaravelsite/public/displaypage/foo。如果我只能为重定向编码,我有一条处理displaypage/{foo}的路线就好了。

任何建议都会非常有用。

我在XAMPP上使用Laravel 5.5和PHP 7

2 个答案:

答案 0 :(得分:1)

首先获取selectbox选项的值,然后将属性操作添加到表单

$('#selectboxid').change(function(){
    var optionSelected = $("option:selected", this);
    optionValue = this.value;
    $('#idoftheform').attr('action','public/displaypage/'+optionValue);
});

答案 1 :(得分:0)

谢谢Jigs指出我正确的方向。以下代码对我来说很有效,添加在form::select元素下面。我能够获取所选值并将其附加到Laravel路线(我的路线"我的计划"指向'公共/显示页面')

<script>
$('[name="plans"]').change(function(){
    var optionSelected = $("option:selected", this);
        optionValue = this.value;
    document.location.href="{!!route('my-plans')!!}" + "/" + optionValue;
});
</script>

非常感谢。