2016-11-17 197 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

谢谢,它适用于我。 –