今天在使用JS判断两个字符串时,发现明明相同的字符串,JS却判断为不相等。
花了好大一会时间,得到了两个解决方法:
方法一:
修改参数的返回值,由返回字符串改为了整型。(这个是我自己想的,惹不起我躲得起吧。)
Java代码:
if (result == “true”) { return 1; } return 0;
JS代码:
success: function(result) { if (result==1) { alert("修改信息成功"); } else { alert("修改信息失败,请重新尝试"); } },
方法二:
虽然有了一个解决方法,我觉得还是要弄清原因,然后继续百度,网上说可能是字符串里面有空值。
需要使用jquery的 $.trim就好了,但是要引入jquery.js的依赖。 $.trim(string1) == $.trim(string2)
下面是我的另一种Java和JS代码:
Java代码:
if (result == "true") { return "true"; } return "false";
JS代码:
success: function(result) { if ($.trim(result)=="true") { alert("修改信息成功"); } else { alert("修改信息失败,请重新尝试"); } },
如果上面有说的不对的地方,欢迎指正呀。