2016-11-17 148 views
0

我得到dataArray insertAction併發送mysql函數,我將數據插入表中。當uri是domain.com/v2/translate它正在工作,但是當uri是domain.com/v2/translate/lid/2例如比Phalcon造成的路線!我有這個路線定義。Ajax無法正常工作?

$('.save').click(function(e){ 

    var langKeyId = $(this).prev('input').attr('id'); 
    var translateText = $(this).prev('input').val(); 
    var lid = $(this).prev('input').attr('data-lid'); 
    var dataArray = [langKeyId, translateText, lid]; 

    $.ajax({ 
     type: "POST", 
     url: "translate/insert", 
     data: {dataArray : dataArray}, 
     success: function(r) { 
      $(this).disabled = true; 
     } 
    }); 
}); 
+0

不要在變量名'langKeyId'周圍使用反引號。 – RamRaider

+0

@RamRaider我不會在代碼中使用反引號,不適當地將它複製到。 –

+1

您正在使用相對路徑:'url:「translate/insert」',這樣只會在相對路徑解析到正確路由的頁面上工作。使用絕對路徑可以解決這個問題。 – jeroen

回答

1

相反,如果你使用的URL,而無需使用

url: "translate/insert"

使用

url: "/translate/insert"

或類似url: "http://domain.com/v2/translate/insert"

絕對路徑的 '/' 開頭ÿ你實際上正在做一個阿賈克斯電話domain.com/v2/translate/lid/2/translate/insert

+0

謝謝,它適用於我。 –