【发布时间】:2015-10-13 14:12:01
【问题描述】:
当我试图从我的控制器获取 post 值时, 我总是得到空值。
但是如果我检查 post 值,我可以清楚地看到有 post 值,但不知何故我没有在我的控制器中获得该值。
有谁知道问题出在哪里以及为什么我没有收到帖子数据...!!!
HTML ---
<form method="post">
<div align="center" class="col-md-10">
<input type="text" id= "input" name="input" >
</div><
<div class="form-group"><button type="submit" class="btn btn-default" id="search">
Search
</button></div>
</form>
javascript --
<script>
$(document).ready(function () {
$("#search").on('click', function (e) {
e.preventDefault();
var data = {};
data['input'] = $('#input').val();
// Submit data via AJAX§
$.ajax({
url: '/home',
type: 'post',
data: data,
success: function (data) {
}
}),
return false;
});
});
</script>
控制器---
function contentAction(Request $request) {
$tic = microtime(true);
$request = $this->getRequest();
$data = $request->request->get('input');
print_r($data);
【问题讨论】:
-
我不知道
Request太好了,但是post也有功能吗?所以你使用函数get,但是你用post发送表单 -
你为什么使用
$request = $this->getRequest();?您已经在使用Request $request设置请求 -
$request->$request是干什么用的?你能在你的控制器顶部做一个var_dump($request);(在你做任何其他事情之前)并给我们结果吗? -
看看你的
Html和jQuery,起初不可能进行ajax 调用(触发点击事件)。检查您是否使用过class selector (.search)并且在html 中您使用过id (search)
标签: javascript php ajax post