2017-02-11 104 views
1

我在jquery ajax中进行调用,并且在从头开始定义ajax属性时使用相同的代码,当在javascript对象中设置相同的值时,然后用ajax定义ajax请求该对象的属性分别在服务器中我无法访问它们。 虽然这个工程:用javascript对象设置jquery AJAX属性

var onsuccess =function (data){ 
     console.log(data) 
     makeArchiveRequest(); 
    } 
    var onerror = function (data){ 
     console.log(data) 
    } 
    $.ajax({ 
     url: 'makeDBEntry/archive', 
     data: formData, 
     contentType: false, 
     processData: false, 
     type: "POST", 
     success: function(data){ 
      onsuccess(data) 
     }, 
     error:function (data) { 
      onerror(data); 
     } 
    }); 

这不起作用:

var req = { 
     type :"POST", 
     data : formData, 
     url  : 'makeDBEntry/archive', 
     contentType: false, 
     processData: false, 

    }; 

    $.ajax({ 
     url: req["url"], 
     data: req["data"], 
     contentType: req["data"], 
     processData: req["processData"], 
     type: req["type"], 
     success: function(data){ 
      onsuccess(data) 
     }, 
     error:function (data) { 
      onerror(data); 
     } 
    }); 

我只是不能找出我做错了;

回答

1
在第一个版本

一切事情都工作正常,你有contentType: false,,因此通过简单的对比,我们发现,在第二个要设置contentType: req["data"],req["data"]具有作为价值formData而不是false。我想这个错误来自于这个来源。