我有一个bootstrap模式对话框(见下图)
红色危险按钮(由xx标记)是动作发生的地方。单击该按钮时 - 应该删除上载的文件(在本例中为2013-09-18_16h40_47.png),而模式对话框仍然打开,这不是现在正在发生的事情。下载ID未传递给控制器方法和单击红色按钮时模式对话框将关闭。
UI代码:
{{ Form::open( array('route' => 'download.deletedownload','method' => 'post','id' => 'form-add-setting') ) }}
{{Form::hidden('downloadId',$download->id)}}
<button id="downloadDelete" type="submit" class="btn btn-xs btn-danger">xx</button>
{{Form::close()}}
路线看起来像这样
Route::post('deletedownload', array('uses' => 'DownloadsController@deletedownload', 'as'=>'download.deletedownload'));
,控制器方法如下所示
public function deletedownload()
{
if(Request::ajax()) {
dd("this is an ajax request");
};
var_dump('i am in the deletedownload method of the DownloadsController class');
$id = Input::get('id');
dd($id);
return Redirect::back();
}
Javascript:
$('#downloadDelete').click(function (e)
{
$.ajax({
type: 'POST',
url: '<?=URL::to('/')?>/deletedownload',
data: 'dataString',
dataType:'json',
success: function(result)
{
console.log(result);
}
})
});
这是输出
string(66) "i am in the deletedownload method of the DownloadsController class" NULL
请注意,“这是一个ajax请求”没有得到回应。因此,我有理由相信这不是ajax请求。
任何帮助都将受到赞赏。
感谢
答案 0 :(得分:0)
你的Javascript在哪里? Ajax请求应该使用Javascript或jQuery从客户端显式发送。我不知道Ajax是否已附加在该模态按钮上?
<强>更新强>
我可以看到你在服务器端使用命名路由,但在Ajax请求中你指向URL?