object 对象在 JSON.parse 中不是有效的 JSON (<anonymous>)

问题描述 投票:0回答:1

我有以下代码

  function fncGetUsuarioProducao(p1) {
      $.ajax({
          type: "POST",
          url: "cadRecebimentoProducao.aspx/GetUsuarioCartaoAcesso",
          data: JSON.stringify({ codCartaoAcesso: p1 }),
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          success: function (result) {
              if (result.length == 4) {
                  $("#divAlerta").css("display", "");
                  return false;
              } else {
                  $("#divAlerta").css("display", "none");
                  var json = JSON.parse(result);
                  //$("#txtQuantidade").val(json.IdUsuario);
                  opener.document.getElementById("hiddenIdUsuario").value = json.IdUsuario;
                  opener.document.getElementById("txtUsuarioProducao").value = json.Funcionario.ContaUsuarioDominio;
                  window.opener.document.form1.submit();
                  window.parent.close();
              }
          },
          failure: function (response) {
              alert(response.d);
          }
      });
  }

此代码自 2018 年以来一直有效。本周开始出现问题。执行此代码时,我收到以下错误消息


Uncaught SyntaxError: "[object Object]" is not valid JSON
    at JSON.parse (<anonymous>)
    at Object.success (cadRecebimentoProducao.aspx?IdSolicitacaoAnalise=359139&Quantidade=2&Unidade=LI:153:41)
    at j (jquery.min.js:2:26925)
    at Object.fireWith [as resolveWith] (jquery.min.js:2:27738)
    at x (jquery.min.js:4:11253)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4:14765)

我在json.parse之前插入console.log(result),并将出现在验证器中的json放入,json就可以了。有谁知道它会是什么?

javascript json
1个回答
1
投票

你的

result
已经被解析了,只需使用它,否则解析它会抛出错误。

您将

dataType:'json'
传递给
$.ajax
,从而要求 jQuery 将返回的结果解析为 JSON。

JSON.parse({})

© www.soinside.com 2019 - 2024. All rights reserved.