你好,當我想在我的文本字段中顯示我的查詢結果時遇到問題我試圖不使用 JSON.parse 但是當我這樣做時它沒有顯示任何內容然后我使用警報并顯示我的未定義這是 代碼使用警報顯示結果$(document).ready(function(){ $('#zip_code').blur(function() { var zip_code=$(this).val(); if(zip_code != '') { var _token = $('input[name="_token"]').val(); $.ajax({ url:"{{route('complete.zip')}}", method:"POST", data:{zip_code:zip_code,_token:_token}, success:function(data) { alert(data.value1); } }); } });});當我嘗試在控制臺中轉換 JSON 時,向我展示 SyntaxError: JSON.parse: JSON 數據的第 1 行第 1 列的數據意外結束這是代碼$(document).ready(function(){ $('#zip_code').blur(function() { var zip_code=$(this).val(); if(zip_code != '') { var _token = $('input[name="_token"]').val(); $.ajax({ url:"{{route('complete.zip')}}", method:"POST", data:{zip_code:zip_code,_token:_token}, success:function(data) { var result = JSON.parse(data); $('#estado').val(result.value1); $('#municipio').val(result.value2); } }); } });});PHP 文件是下一個使用的數據庫;類 ClientBusinessController 擴展控制器 {public function index(){ return view("new_client.register_business");}public function receiveValueZip(Request $request){ if(!empty($request->get('zip_code'))) { $result=DB::table('direccion') ->select('Calle1','Calle2') ->where('Id_Direccion','=',6) ->get(); foreach($result as $r) { json_encode(array("value1"=>$r->Calle1,"value2"=>$r->Calle2)); } } }有人知道如何解決這個問題嗎?非常感謝
1 回答

蝴蝶不菲
TA貢獻1810條經驗 獲得超4個贊
json_encode如果多次調用,最終會得到無效的 JSON。相反,您應該完全構建數組結構并json_encode只調用一次。但是我建議使用response()->json并讓 Laravel 處理 JSON 序列化:
public function index()
{
return view("new_client.register_business");
}
public function receiveValueZip(Request $request)
{
if(!empty($request->get('zip_code')))
{
$result=DB::table('direccion')
->select('Calle1','Calle2')
->where('Id_Direccion','=',6)
->get();
return response()->json(
$result->map(function ($row) {
return array("value1"=>$r->Calle1,"value2"=>$r->Calle2);
});
);
}
}
- 1 回答
- 0 關注
- 150 瀏覽
添加回答
舉報
0/150
提交
取消