Laravel表单提交路由和控制器

时间:2015-01-10 07:46:29

标签: laravel

1.如何才能将正确的路由转换为表单开放短语。

2.我想生成URL:dgrs / 2014-31-01。

仅在视图文件中形成:dgrs / show.blade.php

{{ Form::open(array('action'=>'DgrsController@ddgr')) }}
   Select Date: 
   {{ Form::input('date', 'dgrdate', $dt, array('class' => 'input-md')) }}
   {{ Form::submit('View', array('class'=>'btn btn-primary')) }}
{{ Form::close() }}

routes.php文件

Route::match(array('GET', 'POST'), 'dgrs/(:date)', ['as'=>'ddaily', 'uses'=>'DgrsController@ddgr']);

DgrsController.php

public function ddgr($date)
{

    $dt=isset($date) ? $date : date("Y-m-d");   //date selection from user
    ...

    return View::make('dgrs.show', compact('dfinal', 'dt'));
    //dfinal is db query and dt is selected date back to show.blade.php
}

view是表单文件:dgrs / show.blade.php

请告知。

1 个答案:

答案 0 :(得分:0)

这是jQuery的解决方案

<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>

{{ Form::open(array('action'=>'DgrsController@ddgr' , 'id' => 'myFrm')) }}
Select Date:
{{ Form::input('date', 'dgrdate', $dt, array('class' => 'input-md' , 'id' => 'txtDate')) }}
{{ Form::submit('View', array('class'=>'btn btn-primary')) }}
{{ Form::close() }}


<script>

$(document).ready(function(){

    $("#txtDate").change(function(){

        var baseUrl = "{{  URL::to("dgrs") }}" + "/" + $(this).val();

        $("#myFrm").attr("action",baseUrl);

    });

});

</script>

所以我所做的就是当日期更改表单时,操作网址会根据该日期进行更改。