我正在使用jQuery Ajax从表单发布一些数据。这是我的代码。
$(() => {
$("#send-data").on("submit", () => {
$("#submit-button").prop('disabled', true);
$("#submit-button").html("SENDING...");
$.ajax({
url: 'send.php',
method: 'POST',
data: $("#send-data").serialize(),
success: (response) => {
if (response.indexOf('1900') != -1) {
$("#submit-button").removeAttr("disabled");
$("#submit-button").html("SENDING");
$('.error-msg').css('display', 'none');
$('.success-msg').css('display', 'inherit');
} else {
$("#submit-button").removeAttr("disabled");
$("#submit-button").html("SENDING");
$('.success-msg').css('display', 'none');
$('.error-msg').css('display', 'inherit');
}
}
})
return false;
})
})它可以很好地处理第一个请求。但在响应之后,它就不起作用了。错误是Uncaught TypeError: response.indexOf is not a function。
响应= {"responseCode":1900}
我向一个API(1)发送请求,然后该API(1)向另一个API(2)发送请求。该API(2)向API(1)提供JSON响应{"responseCode":1900}。我正在使用CURL (PHP)获得响应。然后,我只是将该响应发送到ajax。
有人能帮帮忙吗?
更新:我已经解决了这个问题。问题出在这些API上。
发布于 2018-06-08 22:29:40
根据您的评论,您收到的是json对象而不是string。
这样你就可以做到
if (response.responseCode != 1900)https://stackoverflow.com/questions/50762709
复制相似问题