0
我有一個調用JS腳本如何通過從控制器JSON響應返回給AJAX的成功方法Laravel 5.4
setInterval(function(){
$.get("/fetch-data", function(data) {
console.log(data);
});
},1000);
和我的路線是這樣的
Route::get('/fetch-data', '[email protected]');
我的控制器方法
public function fetchData()
{
$results_array = [];
$file = new \SplFileObject('file.csv');
$file->setFlags(\SplFileObject::READ_CSV);
foreach ($file as $row) {
$results_array[] = $row[0];
$results_array[] = $row[1];
$results_array[] = $row[2];
$results_array[] = $row[3];
...
}
return response()->json($results_array);
//$json = response()->json($results_array);
//return view('view.blade',compact($json));
}
請注意,使用return response()->json($results_array);
時,原始json文本直接顯示在頁面上。不是我想要的。
雖然return view('view.blade',compact($json));
返回整個html文件。仍然不是我想要的。
我想實現的是從控制器返回的原始json文本傳遞給調用js腳本的回調。
任何想法?
console.log打印什麼?它不是一個JSON字符串嗎? – trajchevska
使用你的代碼,任何東西都不應該直接顯示在頁面上,php腳本輸出的信息存儲在'data'變量中。如果您在網頁上看到了某些內容,則其他地方正在發生其他事情。 – jeroen
with'return response() - > json($ results_array);'原始json字符串顯示在'fetch-data' URI上,並且控制檯日誌中不顯示任何內容。 – anagnam