【发布时间】:2015-06-17 13:57:06
【问题描述】:
我的表格很简单:
{{ Form::open(array('id' => 'frm')) }}
<div class="form-group">
{!! Form::label('id','id:'); !!}
{!! Form::text('id',null,['class' => 'form-control']); !!}
</div>
<div class="form-group">
{!! Form::submit('Update',['class' => 'btn btn-primary form-control']); !!}
{!! Form::close() !!}
我想将表单输入字段中的值发布到控制器,然后在控制器中对数据库运行查询以获取表单中的 id 值。最后,使用 ajax,显示 DB 查询的结果,如果没有结果,则显示一条消息提醒用户。
我试过这个:
<script>
$("document").ready(function(){
$("#frm").submit(function(e){
e.preventDefault();
var customer = $("input[name=postal]").val();
$.ajax({
type: "POST",
url : "http://laravel.test/ajax",
data : dataString,
dataType : "json",
success : function(data){
}
}, "json");
});
});//end of document ready function
</script>
我尝试了几种方法来获取控制器中的post 数据,但都没有成功。
---问题一:
当我尝试在路由中使用它时出现问题:
Route::post('ajax', function() { // callback instead of controller method
$user = App\User::find(\Input::get('id');
return $user; // Eloquent will automatically cast the data to json
});
我收到 sintax 错误,在 (;) 的第二行
另外,我尝试在控制器中获取数据并打印它们:
if(Request::ajax()) {
$data = Input::all();
print_r($data);die;
}
ROUTES.PHP
Route::post('/',
['as' => 'first_form', 'uses' => 'TestController@find']);
Route::get('/', 'TestController@index');
Route::post('ajax', function() { // callback instead of controller method
$user = App\User::find(\Input::get('id');
return $user; // Eloquent will automatically cast the data to json
});
功能:
public function ajax()
{
//
// Getting all post data
if(Request::ajax()) {
$data = Input::all();
print_r($data);die;
}
}
我发现了更多将数据从视图发送到控制器的方法,但甚至不想显示已发布的数据。我检查了fire-bug,发布请求中有发布值
【问题讨论】:
-
能否请您添加以下信息:您的
routes.php和您的完整控制器方法。谢谢 -
fyi,语法错误是因为缺少
)