[英]Laravel view shows on chrome dev-tools instead of redirecting to blade
美好的一天stackoverflow-Devs,
我正在制作一个广告系列项目,您可以在发布之前创建,修改和查看广告系列。 我正在使用MySQL和Firebase实时数据库来存储数据。 我写了一个JavaScript for循环,里面有一个带有ajax调用的if语句,用于将数据发布到laravel控制器,控制器将控制器传递给视图。
我尝试使用以下查看方法:
return view('view-campaign')->with('img',$img); //This one used to work perfectly
和:
return redirect('view-campaign')->with('img',$img);
最后:
return view('view-campaign', ['img',$img]);
这是我的源代码:
<td>
<a onclick="viewCampaign('{{$item->id}}')" class="btn btn-success mb-2"
data-toggle="tooltip" title="view campaign">
<i class="fa fa-edit"></i>
</a>
</td>
function viewCampaign(id){
console.log(id);
// Your web app's Firebase configuration
var firebaseConfig = {
apiKey: "apiKey",
authDomain: "authDomain",
databaseURL: "databaseURL",
projectId: "projectId",
storageBucket: "storageBucket",
messagingSenderId: "messagingSenderId",
appId: "appId"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
database = firebase.database();
var ref = database.ref("CampaignCollection");
//retrieve firebase stored data
ref.on('value', function getData(data){
var obj = data.val();
var keys = Object.keys(obj);
for(var i = 0; i < keys.length; i++) {
var k = keys[i];
var F_id = obj[k].id;
var img = obj[k].Poster;
var name = obj[k].Name;
if(id == F_id){
$.ajax({
type: "POST",
url: "/viewCampaign",
data: {
'img': img,
"_token": "{{ csrf_token() }}",
},
})
}
}
})
}
Route::post('viewCampaign','CampaignController@viewCampaign');
public function viewCampaign(){
$img = $_POST['img'];
return view('view-campaign')->with('img',$img);
}
预期结果是将结果重定向到刀片并显示为网页而不是开发工具响应。
您正在做的是向正常的Web路由发送ajax请求。 它将返回一个网页。 因此该网页将作为ajax响应返回。 您可能需要以表单请求的形式提交详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.