我有這樣一個JavaScript,這將調用兩個不同的控制器在兩個不同的情況.... 現在的問題是它是一個獲取方法和一個是銷燬方法...當生成調用時,控制器功能從未觸發。不知道URL方法是否正確。這是給500錯誤。從ajax請求調用laravel控制器與get/put/delete方法
我也不確定控制器的迴應。但在此之前,我需要在控制器中執行數據庫操作......這不會執行。提前感謝您的幫助:)
下面JS代碼: - >
function follow_or_unfollow(id,action)
{
//var dataString = "id=" + id;
if(action == "follow") {
myUrl = "{{ action('[email protected]', 'id') }}" ;
myMethod = "GET";
}
else
{
myUrl = "{{ action('[email protected]', 'id') }}" ;
myMethod = "DELETE";
}
var dataString = "id=" + id;
$.ajax({
type: myMethod ,
url: myUrl,
//data: dataString,
beforeSend: function()
{
if (action == "following")
{
$("#following"+id).hide();
$("#loading"+id).html('<img src="loading.gif" align="absmiddle" alt="Loading...">');
}
else if (action == "follow")
{
$("#follow"+id).hide();
$("#loading"+id).html('<img src="loading.gif" align="absmiddle" alt="Loading...">');
}
else { }
},
success: function(response)
{
if (action == "following"){
$("#loading"+id).html('');
$("#follow"+id).show();
}
else if (action == "follow"){
$("#loading"+id).html('');
$("#following"+id).show();
}
else { }
},
error : function(xhr, textStatus, errorThrown) {
if (xhr.status == 500) {
alert("Error 500: "+xhr.status+": "+xhr.statusText);
} else {
alert("Error: "+xhr.status+": "+xhr.statusText);
}
},
complete : function(xhr, textStatus) {
allert('ok');
}
});
}
</script>
1日編輯
拿到一分Firefox的工具清理後(由Chinnu的建議)
它表示
`[18:38:47.658] GET http://localhost/ffdd/public/follows/id [HTTP/1.1 500 Internal Server Error 230ms]`
那手段!該id沒有被生成爲數字或id變量,它只是作爲「id」字符串。現在需要一個特定的解決方案,如何發送id的值....在控制器通過JS。
第二編輯
如果我把數字或ID的價值,而不是通過「ID」,這意味着如果id的值可以直接打印有它的工作提到這一點的。更簡單的方法是什麼?
myUrl = "{{ action('[email protected]', <the value of id>) }}" ;
感謝您的回覆兄弟! 這很好。但是如果我們在這裏考慮get或post方法,那也沒有被觸發到控制器!你能在這個JS代碼中找到任何錯誤嗎? –
Firefox Tools-> Web Developer - >錯誤控制檯或CTRL + SHIFT + J –
您的代碼顯示 - 錯誤:405:方法不允許 –