我正在使用Laravel框架。我对此感到困惑。我成功获得数据。但是,当我想显示数据时,它会以数组形式显示数据。任何人都可以帮我如何显示列表。我在div
<div class="col-md-9 col-sm-9 col-xs-12" id="ajaxListings">
@include('layouts.publicLayout.get-listings')// here i have implemented layout
</div>
和
function filteredlistings(){
$.ajax({
url:'search-listings',
data:{
'service_name':title,
'location':location
},
type:"get",
success:function(allData)
{
$("#ajaxListings").html(allData);
},
error: function()
{
alert('error');
}
});
}
这是我的功能:
public function search_listings(Request $request){
if($request->ajax()){
$data = $_GET;
$users = DB::table('users')
->join('business_services', 'users.id', '=', 'business_services.user_id')
->join('listings','users.id', '=', 'listings.user_id')
->select('users.id', 'business_services.name', 'business_services.list_id','listings.location')
->where(['business_services.name'=>$data['service_name'],'users.service_name'=>"Seller"])
->where('listings.location','like','%'.$data['location'].'%')
->get();
$users = json_decode(json_encode($users),true);
foreach($users as $alluser){
$ids[] = $alluser['id'];
}
$allData="";
if(!empty($ids)){
$allData = User::with('listings')->whereIn('id',$ids)->get();
$allData = json_decode(json_encode($allData),true);
}
$title = "Nails";
echo "<pre>"; print_r($allData); die;
}
}
答案 0 :(得分:1)
你想要返回布局+数据的Iguess,所以你可以使用:
<option value="0" ></option>
<option value="1" >check-out-and-edit</option>
<option value="2" disabled>undo-checkout</option>
而不是:
return view('layouts.publicLayout.get-listings',compact('allData'));
您可以使用echo "<pre>"; print_r($allData); die;
在布局中访问您的数据。
希望这有帮助。
答案 1 :(得分:0)
问题在于:
echo "<pre>"; print_r($allData); die;
而不是print_r
,将数据作为JSON返回,以便jQuery可以解析它:
return response()->json($allData);
然后在你的jQuery成功函数中,你可以迭代数据
success:function(allData)
{
// simple example showing the firstnames
var example = '';
$.each(allData, function(){
example += ', ' + this.firstname;
});
$("#ajaxListings").text(example);
},