为了账号安全,请及时绑定邮箱和手机立即绑定

在来自 php 函数的 ajax 响应上显示错误

在来自 php 函数的 ajax 响应上显示错误

PHP
30秒到达战场 2023-06-18 17:12:54
我有一些像这样的ajax调用function ExportData() {  var data = {    action: "export_database", // the name of your PHP function!  };  jQuery.ajax({    type: "POST",    url: ajaxurl,    data: data,    beforeSend: function () {},    success: function (data) {      alert(data);    },  });}和这样的php函数function export_database(){  return $response;}问题在于那个回应我有这样的事情{    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",    "title": "One or more validation errors occurred.",    "status": 400,    "traceId": "|3fa58ee1-48bf0cb9f60bfa25."}我只想提醒标题,但是当我尝试data.title时,我得到了undefine 我必须编码或解码某些东西吗,谢谢?
查看完整描述

3 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

这就是你所需要的。只需访问该对象data.title,它就会显示在alert()


您需要dataType在请求中定义为 json。


如果它不起作用,请JSON.parse(data)像这样使用:


var response = JSON.parse(data)

alert(response.title)

尝试以下:


function ExportData() {

  var data = {

    action: "export_database", // the name of your PHP function!

  };


  jQuery.ajax({

    type: "POST",

    url: ajaxurl,

    dataType: 'json'

    data: data,

    beforeSend: function () {},

    success: function (data) {

      alert(data.title);

    },

    error: function(error){

      //Error

      alert(error.title)

    }

  });

}


查看完整回答
反对 回复 2023-06-18
?
HUWWW

TA贡献1874条经验 获得超12个赞

尝试以下:


    function ExportData() {

      var data = {

        action: "export_database", // the name of your PHP function!

      };


      jQuery.ajax({

        type: "POST",

        url: ajaxurl,

        data: data,

        beforeSend: function () {},

        success: function (data) {

          var parsedData = jQuery.parseJSON(data)

          alert(parsedData.title);

        },

      });

    }


查看完整回答
反对 回复 2023-06-18
?
侃侃尔雅

TA贡献1801条经验 获得超15个赞

您必须使用 JSON.parse() 来访问数据对象,如下所示:


function ExportData() {

  var data = {

    action: "export_database", // the name of your PHP function!

  };


  jQuery.ajax({

    type: "POST",

    url: ajaxurl,

    data: data,

    beforeSend: function () {},

    success: function (data) {

var res = JSON.parse(data)

      alert(res.title);

    },

  });

}


查看完整回答
反对 回复 2023-06-18
  • 3 回答
  • 0 关注
  • 153 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信