我有以下代码
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就可以了。有谁知道它会是什么?
你的
result
已经被解析了,只需使用它,否则解析它会抛出错误。
您将
dataType:'json'
传递给 $.ajax
,从而要求 jQuery 将返回的结果解析为 JSON。
JSON.parse({})