我有一个$ .ajax请求,当我发送成功的响应数据:function(data)时,我得到数据但由于某种原因我不能在If语句中使用它:
$.ajax({
type: "POST",
url: "control.php",
data: {"txtNumFattura" : $("#txtNumFattura").val(),
"txtDataFattura": $("#txtDataFattura").val()},
success: function(data) {
console.log(data);
if (data == 'OK') {
console.log("Chiave non ancora utilizzata");
$("#submitMyForm").removeAttr("disabled");
}
else if(data == 'KO') {
$("#mySubmitForm").attr("disabled","disabled");
console.log("Chiave Utilizzata");
};
}
});
例如,console.log给我“OK”或“KO”,但似乎它没有在if语句中读取它。
答案 0 :(得分:0)
OK或KO后可能会有额外的空格。使用
console.log("*" + data + "*");
如果有,你可以使用replace()删除这些。例如,
data = data.replace(/\s/g, "");
\s
是一个空格字符,' g'意味着全球化。
答案 1 :(得分:0)
尝试
if(data.toLowerCase().indexOf('ok') != -1){
// ok was found
} else if (data.toLowerCase().indexOf('ko') != -1) {
// ko was found
} else {
// neither was found
}
答案 2 :(得分:0)
如果你确定它给你OK或KO,你可以试试这个:
if ($.trim(data) === 'OK') {
console.log("Chiave non ancora utilizzata");
$("#submitMyForm").removeAttr("disabled");
} else if($.trim(data) === 'KO') {
$("#mySubmitForm").attr("disabled","disabled");
console.log("Chiave Utilizzata");
};