我的讲师为我和我的 friend 提供了一个项目,使用最新的 Laravel 框架创建一个应用程序。我对这个框架不太熟悉。我正在尝试使用 AJAX 将数据加载到我的 View 中。
User Navigation for searching customer
这是显示表格的代码
@foreach($mpelanggan as $mpelanggan)
{{ Form::open() }}
{{ Form:: hidden('_method' ,'DELETE')}}
<tr>
<p hidden id="kd" value="{{$mpelanggan->Kd_Pelanggan}}"/>
<td>{{$mpelanggan->Perusahaan}}</td>
<td align="center">
<button type="button" class="btntransparant" value="{{$mpelanggan->Perusahaan}}" id="ch">
<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
</button>
<a class="fontblack" >
<span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>
</a>  
<button type="submit" class="btntransparant" onclick="return confirm('Are you sure you want to delete this data?');">
<span class="glyphicon glyphicon-trash" aria-hidden="true"></span>
</button>
</a>
</td>
</tr>
{!!Form::close()!!}
@endforeach
当用户单击+按钮时,它将加载此表中的交易列表:
我的路线:
Route::get('trans','TransController@index');
Route::get('getBTB',array('as'=>'getBTB','uses'=>'TransController@getBTB'));
我的 Controller TransController:
public function index(){
$Mpelanggan = Mpelanggan::all();
return view('tr.nav')->with('mpelanggan' , $Mpelanggan);
}
public function getBTB(Request $request){
$term = $request->term;
$data = Trbtb_h::where('Kd_Pelanggan',$term)->get();
$result=array();
foreach ($data as $key => $value) {
$result[]=['No_BTB'=>$value->No_BTB,'Tgl_BTB'=>$value->Tgl_BTB];
}
return Response::json(array('success'=>true,'result'=>$result));
}
AJAX
$('#ch').click(function(){
var np=$(this).attr('value');
var get=$('#table1 > tbody');
$('#btb-title').text(np);
$("#pnl-btb").show();
$("#pnl-faktur").show();
$("#pnl-bayar").show();
$("#pnl-btb-list").show();
$.ajax({
url :'getBTB',
type :'GET',
dataType :'JSON',
success :'success',
data :{'term':kd},
success :function(result){
var data = JSON.parse(result);
var x;
for(x=0;x<data.length;x+=1){
var dat = data[i];
get.append('<tr><td>'+dat.No_BTB+'</td><td>'+dat.Tgl_BTB+'</td><td align="center"><button type="button" class="btntransparant" value="" id="ch"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> </button> <a class="fontblack" > <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span> </a>  <button type="submit" class="btntransparant><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></button></a></td></tr>');
}
}
})
});
我想将 $result 中的数据放入 btody 标记中,就像客户列表一样。
<div class="row" id="pnl-faktur">
<table class="table table-striped table-bordered" id="table2">
<thead>
<tr>
<th>Plh</th>
<th>No. Faktur</th>
<th>Tanggal</th>
<th>Jatuh Tempo</th>
<th>Piutang</th>
</tr>
</thead>
<tbody>
</tbody>
<tfoot>
<td colspan="4" align="right">Total</td>
<td><input type=text/></t>
</tfoot>
</div>
我看了一些关于 AJAX 和 Laravel 的教程,但我不明白,我不知道如何将 $result 加载到 AJAX 脚本中的 View 中。 这是我在 stackoverflow 中的第一个问题,如果我犯了任何错误,我很抱歉
最佳答案
问题是我从成功函数访问了错误的数组。所以我的 friend 建议我将它分成 Controller 中的 2 个不同的变量
AJAX
$.ajax({
url :'getBTB',
type :'GET',
dataType :'json',
success :'success',
data :{'term':kd},
success :function(result){
$.each(result.result, function(i,index){
$('#table4 tbody').append('blablabla');
});
}
Controller
public function getBTB(Request $btbid){
$term = $btbid->term;
$data = Trbtb_h::where('Kd_Pelanggan',$term)->get();
$sen['success'] = true;
$sen['result'] = $data->toArray();
return Response::json( $sen );
}
关于jquery - 在 Laravel 中从 AJAX 返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36665827/