这是我的ajax成功函数:
success: function (data) {
if(data == 'logged') {
window.location.href = window.location.href;
} else {
$("#result").html(data);
}
},
在我的php脚本返回'记录'文本重定向不开始,但脚本执行来自else参数的东西并插入我的#result div返回'记录'文本。
当我的PHP脚本没有返回“已记录”时,也会发生这种情况。文本,但返回其他东西..返回的数据插入到#result div ...似乎这个函数完全跳过if / else参数..为什么会发生?
答案 0 :(得分:4)
我能想到的唯一原因是你可能会得到一个单词logged
的空格。理想情况下,您应该在服务器端修复该问题以发送修剪/正确的响应。但是,如果您出于任何原因想在客户端执行此操作,则可以使用trim()
。
trim()
方法从字符串的两端删除空格,制表符和不间断空格等空格字符。方法。当您知道两个操作数是相同类型时(在我们的例子中,两者都是字符串类型),也可以考虑使用===
( Identity运算符)进行比较。
success: function (data) {
if(data.trim() === 'logged') {
window.location.href = window.location.href;
} else {
$("#result").html(data);
}
},