【问题标题】:Laravel redirect with javascriptLaravel 使用 JavaScript 重定向
【发布时间】:2016-02-25 19:10:33
【问题描述】:
我有一个表单,用户可以选择从 2 到 10 的数字。根据选择的数字,我想重定向到 '/mypage?number=[2..10]',就像 Laravel 的 redirect() 函数一样。因此,闪烁旧的输入值以相应地填写表格。基于 $_GET['number'] 参数执行一个 for 循环,打印 2 到 10 个输入字段。
如何以最有效(并且应该是)的方式完成这项工作?还是我必须设置一个新路由,比如Route::post('mypage/{number}', 'myController@redirectMethod')?
【问题讨论】:
标签:
javascript
php
laravel
redirect
laravel-5.1
【解决方案1】:
你可能想多了。如果这是在表单中,只需将表单操作设置为/mypage,并将选择的名称设置为number,并将表单的方法设置为get。提交表单后,它将把用户带到页面。如果您希望它在用户修改下拉列表时自动提交,您可以通过 js/jquery $('#myForm').submit() 以编程方式提交表单。
应该不需要额外的路由来处理number 参数。使用\Input::get('number')获取服务端的值。
【解决方案2】:
javascript如何获取{number}
您需要在 javascript 中做的所有事情
location.href
【解决方案3】:
1) 任何一个重定向都应该在服务器上进行 - 当您在服务器上发送参数时,它会为您带来正确的页面或将您重定向到正确的页面。
2) 或者您需要在 laravel_blade 中生成 javascript 并在 Javascript 中设置此逻辑。比如说,生成带有额外 data- 属性的输入字段,并让 javascript 来处理这个属性。
3) 或者,完全避免重定向,让 javascript 根据按下按钮的数据属性在同一页面上生成可变数量的输入字段。