js中判断2个字符串相等的问题

bear_liu01 2009-02-27 02:14:13
var div = document.getElementById("udiv");
div.innerHTML = http_request.responseText;
div.style.color="red";
div.style.display="";
alert(http_request.responseText);
var mes=http_request.responseText;
alert(mes);打出来的是"该用户名已被注册";
var str="该用户名已被注册";
if(mes == str)
{
alert("ggggggggggggg");
document.zhuceform.b_add.disabled;
}

mes和str为什么不相等
为什么不进if语句
...全文
82797 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangliang_88 2011-12-08
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 benben_jie 的回复:]
引用 3 楼 hzrui 的回复:
估计是mes里面有空格或是换行符,试试先用下面的语句修改一下mes
mes = mes.replace( /^\s+|\s+$/g, "" );


好办法,谢谢

IE真是讨厌,别的浏览器都可以
[/Quote]
good job~
benben_jie 2011-09-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 hzrui 的回复:]
估计是mes里面有空格或是换行符,试试先用下面的语句修改一下mes
mes = mes.replace( /^\s+|\s+$/g, "" );
[/Quote]

好办法,谢谢

IE真是讨厌,别的浏览器都可以
hfsaini 2010-11-05
  • 打赏
  • 举报
回复
我也出现同样的问题了,来寻找答案的
doingjava 2009-02-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 rob123 的回复:]
var s1 = '该用户名已被注册';
var s2 = '该用户名已被注册';
console.log(s1 == s2); //true

--------------------------
可能是你的mes里面有其他特殊字符。或者你分别输出看看encodeURIComponent(mes)和encodeURIComponent(str)。
[/Quote] 漂亮 我就经常忽略这个问题 估计他就是这个问题 夯……
doingjava 2009-02-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ylc0104 的回复:]
s1.trim()
[/Quote]有 .trim() 方法?
ylc0104 2009-02-27
  • 打赏
  • 举报
回复
s1.trim()
lihan6415151528 2009-02-27
  • 打赏
  • 举报
回复
你设置删除空格
rob123 2009-02-27
  • 打赏
  • 举报
回复
var s1 = '该用户名已被注册';
var s2 = '该用户名已被注册';
console.log(s1 == s2); //true

--------------------------
可能是你的mes里面有其他特殊字符。或者你分别输出看看encodeURIComponent(mes)和encodeURIComponent(str)。
hzrui 2009-02-27
  • 打赏
  • 举报
回复
估计是mes里面有空格或是换行符,试试先用下面的语句修改一下mes
mes = mes.replace( /^\s+|\s+$/g, "" );
jol_boy 2009-02-27
  • 打赏
  • 举报
回复
==也可以的,没问题。
mumu_java 2009-02-27
  • 打赏
  • 举报
回复
js中两个字符串判断的确是用==来判断的。你用mes.trim()+''之后再和str比较应该可以成功。

87,920

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧