JQuery Ajax在发送多个数据时出错

时间:2017-03-29 05:07:59

标签: javascript jquery ajax

name = "name1";
uname = "username";
pass = "password";
$.ajax({
  type: 'POST',
  url: "url",
  data: {
    name: name,
    username: uname,
    password: pass
  },
  success: function(data, textStatus, jqXHR) {
    alert(data);
  },
  error: function(jqXHR, textStatus, errorThrown) {
    alert("Error");
  }


});

此代码在运行时出错:

  

未捕获的TypeError:非法调用

但是,如果我将数据中的参数数量更改为1,则运行正常。 我试图指定数据类型,但无济于事

2 个答案:

答案 0 :(得分:1)

我认为你的数据是数组而不是文本。再试一次,我前段时间遇到了同样的问题。

答案 1 :(得分:0)

你试过JSON.stringify吗?请参阅以下代码示例:

<强> JAVASRIPT

name="name1";
uname = "username";
pass = "password";

var data = { name:name , username:uname , password: pass}; 

$.ajax({
    type: 'POST',
    url: "url",
    data: JSON.stringify(data),
    success: function (data, textStatus, jqXHR) {
      alert(data); 
    },
    error: function (jqXHR, textStatus, errorThrown) {
        alert("Error");
    }
});
  

<强> W3Schools的

     

JSON的一个常见用途是与Web服务器交换数据。

     

将数据发送到Web服务器时,数据必须是字符串。

     

使用JSON.stringify()将JavaScript对象转换为字符串。