【发布时间】:2014-11-16 00:50:25
【问题描述】:
我有一个简单的表单,允许用户输入from_date 和to_date。假设用户分别输入2014-09-01 和2014-09-10。
如何将此表单提交到 URL ../from_date/2014-09-01/to_date/2014-09-10
【问题讨论】:
标签: forms url laravel laravel-4
我有一个简单的表单,允许用户输入from_date 和to_date。假设用户分别输入2014-09-01 和2014-09-10。
如何将此表单提交到 URL ../from_date/2014-09-01/to_date/2014-09-10
【问题讨论】:
标签: forms url laravel laravel-4
要在页面加载后更改 URL,您需要使用 javascript,因为您无法使用 Laravel/PHP 执行此操作,因为您需要访问仅在页面之后选择的日期已加载。
如果您的表单类似于:
<form id="dateForm" onsubmit="return submitDateForm()">
<input type="text" id="from_date" name="from_date">
<input type="text" id="to_date" name="to_date">
</form>
假设您使用 POST 提交表单,并且已经导入了 jQuery,然后将以下 jQuery 插入到您的视图(或您导入的单独 .js 文件)中:
function submitDateForm() {
var from_date = $( '#from_date' ).val();
var to_date = $( '#to_date' ).val();
//Send the request
var request = $.post("../from_date/" + from_date + "/to_date/" + to_date);
//prevent the form from submitting itself normally
return false;
}
【讨论】:
你不能这样做,但如果你需要做这样的事情,你需要提交到标准类控制器,然后使用重定向重新提交:
public function resubmit() {
Redirect::to('/from_date/'.Input::get('from_date').'/to_date/'.Input::get('to_date'))->withInput();
}
但老实说,我不知道你为什么要这么做。通常您将数据发布到静态 url 并使用带有漂亮 url 的动态 url 显示内容。
【讨论】: