我试图对控制器进行ajax调用以保存数据,但它在网络中显示错误。我的jquery是:
Builder settingsBuilder = mock(Builder.class);
when(settingsBuilder.doX()).thenReturn(...);
when(settings.settingsBuilder()).thenReturn(settingsBuilder);
我的路线: $('document').ready(function(){
$('#getype th button').click(function(e){
e.preventDefault();
var a = $(this).val();
var b = $(this).text();
$.get("{{url('gettypes')}}",{id:a}, function(data){
$('#sample').empty();
for (var i = 0; i < data.length; i++) {
drawRow(data[i]);
}
function drawRow(rowData) {
var row = $("<th />")
row.empty();
$("#sample").append(row);
row.append($("<button id='type' class='btn btn-info' value='"+ rowData.ty_id +"'>" + rowData.ty_name + "</button>"));
}
$('#sample button').on('click', function(e){
e.preventDefault();
var c= $(this).val();
var d = $(this).text();
$.get("{{url('getdish')}}", {id:c},function(data){
$('#dishes').empty();
for (var i = 0; i < data.length; i++) {
drawRow(data[i]);
}
function drawRow(rowData) {
var row = $("<th />")
row.empty();
$("#dishes").append(row);
row.append($("<button id='dish' class='btn' value='"+ rowData.item_id +"'>" + rowData.item_name + "</button>"));
}
$('#dishes button').click(function(){
var e = $(this).val();
var f = $(this).text();
$.post("{{url('postdata')}}", {cname:b,cid:a,tname:d,tid:c,did:e,dname:f}, function(data){
console.log(data);
});
});
});
});
});
});
});
和我的控制员:
Route::post('postdata','OrdertController@postdata');
究竟是什么问题,就像我在laravel和ajax中的新手一样?感谢。
答案 0 :(得分:0)
首先,欢迎来到Laravel!
您需要尝试将其更改为laravel dump方法:
public function postdata(Request $request)
{
$data = $request->all();
{{ dump($data) }}
//return $data;
}
我认为问题在于您使用该功能的方式,Laravel中的大多数功能需要返回数据,您尝试回显$ data。
如果您尝试{{ dump($data) }}
(这将回显变量中的所有数据),它会显示所有$data
,之后您可以注释掉return $data;
希望这有效!