我目前正在嘗試實現AJAX搜索,並在那裏遇到了JSON幫助函數,現在我不知道該怎麼做才能擺脫這個東西。返回對象的JSON幫助函數
這裏是我的努力:
查看
<script>
$(document).ready(function(){
$("#q").bind("keyup",function(){
//alert(this.value)
var search=this.value;
var str;
$.ajax({
url:"/search",
type:"get",
data:{q:search},
dataType:'JSON',
success:function(result){
alert(result);
var obj= JSON.parse(result);
alert(obj);
$("#searchdiv").html("<a href='#' onclick='myfunc();return false;'>"+obj[0].name+"</a>");
}
});
$("#q").on("focusout",function(){
$("#searchdiv").slideUp();
});
$("#q").on("focus",function(){
$("#searchdiv").slideDown();
});
});
});
</script>
控制器
public function index(Request $request)
{
$query= $request->input('q');
$search = DB::select('select book_master.book_name,author_profile.author_name from book_master,author_profile where book_master.book_name=? or author_name=?',[$query,$query]);
return response()->json(array('searchdata'=>$search),200);
}
路線
Route::any('/search','[email protected]');
你的Ajax似乎是工作的罰款,這是什麼問題? – madalinivascu
首先,如果在請求中使用dataType,則不需要解析json。那麼你能否提供你的請求結果的轉儲? – GiuServ
您已經意識到瀏覽器控制檯,因此不需要使用'alert()'來檢查變量 - 正如您所看到的,它將所有內容都轉換爲字符串,因此它基本上是無用的。嘗試'console.log()'和[朋友](https://developers.google.com/web/tools/chrome-devtools/console/console-reference)。 –