$.post(
$("#formReg").attr("action"), $("#formReg").serialize(),
function(data, textStatus, jqXHR) {
$("#info").html(data);
alert (data); // to check - ok - `folder` is displaying
if ($("#info").html() == "folder"){
$("#imgOk").fadeIn(); //doesn't work
}
});
似乎#info
有另一个内容,而不是folder
,虽然已通过提醒进行检查,并且folder
在屏幕上显示为内容。
答案 0 :(得分:1)
有时在执行ajax请求时,服务器上会有代码在返回的结果中插入空格。并不总是很容易看到添加空格的位置,但它可能是代码之前或之后的空格,比如在PHP等<?php
之前有一个空格。
最好的方法是简单地删除服务器端的空间,但是javascript也有一个trim方法,它会修剪以下字符串并跟踪字符串中的空格:
if ($("#info").html().trim() == "folder"){...}
旧版浏览器不支持该功能,因此,如果这是一个问题,您可以使用正则表达式,或者因为您已经在使用jQuery,您可以使用类似的跨浏览器功能,它实际上使用相同的本机{{1新浏览器中的方法和旧版浏览器中的正则表达式,所以你不必担心它:
trim()