如何获取选择/下拉值并使用laravel将其传递给url参数?

时间:2017-12-05 07:05:30

标签: php laravel

查看

{!! Form::open(['method'=>'get']) !!}
<div class='col-md-4'>
    <div class="form-group">
        <label for="title">Food</label>
        {!!  Form::select('food', ['1' => 'Western', '0' => 'Eastern'], null, ['class'=>'form-control']) !!}
    </div>
</div>

<div class='col-md-4'>  
    <div class="form-group">
        <label for="title">Beverage</label>
        {!!  Form::select('beverage', ['1' => 'Hot', '0' => 'Cold'], null, ['class'=>'form-control']) !!}
    </div>
</div>

<div class="pull-left">
    <a type="button" href="WHAT_SHOULD_I_PUT_HERE_?"></a>
</div>
{!! Form::close() !!}

路线

Route::get("eat/choose/{food}/{beverage}", "Restaurant@eatAndDrink");

正如您可以在观看次数中看到我的代码,我有2个选择/下拉列表,其中食物饮料。如何获取这些值(在用户选择之后)并将其发送到网址?

例如,如果用户选择Food(Western)和Beverage(Hot),我猜网址会是这样的吗? <a type="{{url('eat/choose')}}/1/1"></a>如果我错了,请纠正我。

1 个答案:

答案 0 :(得分:2)

在这种情况下,您可以使用jquery重定向到页面,也可以使用jquery创建表单并动态提交。

例如,如果您想重定向,可以这样做:

$('button').click(function(e){
    e.preventDefault();
    var food = $('[name="food"]').val();
    var beverage = $('[name="beverage"]').val();
    var linkURL = '/eat/choose/'+food+'/'+beverage; //Your route url
    window.location.href=linkURL;
});

或者如果您想要提交表单,可以这样做:

var food = $('[name="food"]').val();
var beverage = $('[name="beverage"]').val();
var linkURL = '/eat/choose/'+food+'/'+beverage; //Your route url
$('<form action="'+linkURL+'"></form>').appendTo('body').submit();

这只是一个例子,如果你愿意,你也可以添加验证,但我想你会得到一个想法。希望能帮到你。 祝你好运!

相关问题