【问题标题】:Ajax Syntax errorAjax 语法错误
【发布时间】:2015-02-19 10:39:56
【问题描述】:

请在我的 ajax 代码方面需要帮助,我在 ajax 中发送数据时出错。 它给了我一个数据语法错误,我试图改变它很多次,但我没有成功

这是我的代码:

$.ajax({
        type: "POST",
        url: "customer.php",
        data: {content : '"msisdn = '+mob+'"' , type : 'GetCustomer' }, 
        dataType: "json",
                  success:function(data){
          alert(data);        
        },
         error: function(error) { 


                }
        }); 

【问题讨论】:

  • 对象中有很多引号和等号,这是您要发送的吗?
  • 我想发送内容:(msisdn = 变量已存储在我的代码中)
  • 和类型 = GetCustomer

标签: javascript ajax


【解决方案1】:

您的数据属性中没有语法错误(请参阅http://jsfiddle.net/nwjrf0jy/)。

如果您查看激活了一些调试工具的页面,您可以看到正在向customer.php 发出请求。如果是 jfiddle,它会返回 404 错误。

我的猜测是,您的 customer.php 不会返回有效的 JSON 内容。这包括将响应标头设置为application/json

请注意,由于您添加了双引号,您的$_POST['content'] 将是'"msisdn = 12345"'。不知怎的,我不认为你想要那样。

【讨论】:

  • 是的,ajax 语法没有错误,我在 customer.php 中遇到了问题,我解决了,谢谢 :)
【解决方案2】:

可能是数据对象中使用的键需要用引号括起来。

$.ajax({
    type: "POST",
    url: "customer.php",
    data: {'content' : '"msisdn = '+mob+'"' , 'type' : 'GetCustomer' }, 
    dataType: "json",
              success:function(data){
      alert(data);        
    },
     error: function(error) { 


            }
    }); 

【讨论】:

  • 不,如果它们不包含特殊字符,则不会。见this answer
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-23
  • 2012-01-11
  • 1970-01-01
  • 1970-01-01
  • 2018-06-20
相关资源
最近更新 更多