日期:2014-05-17  浏览次数:20492 次

jquery比较两个对象的值,为什么始终不相等?!
看代码
JScript code
$(document).ready(function () {
  //当鼠标滑入时将div的class换成hover
  $(".headtestcss").hover(function () {
  $(".hover").removeClass("hover");
  $(this).addClass("hover");

  }, function () {
  //鼠标离开时移除hover样式
  var attrid = $("#hdfAttrID").val(); 
  var text = $(this).text();
  alert(text);
  if (text == attrid) {
  alert("1");
  }
  else {
  alert(attrid);
  var TabId =$("#hdfTabId").val(); 
  document.getElementById(TabId).className = "hover";
  $(this).removeClass("hover");
  }

  }
  );
  });




已经确认我的attrid 和text的内容是一样的,但是if (text == attrid)为什么始终未false,不管怎样都不弹“1”出来 
 


------解决方案--------------------
实在不行你就改一下试试呗,
JScript code

1、if (String(text) == String(attrid))
2、if (text.toString() == attrid.toString())

------解决方案--------------------
如果上面的方法还不行的话,那很可能说明你两个变量的值确实不一样,可以一一样的弹出来看一看。
------解决方案--------------------
你alert(text)
alert(attrid)是什么?里面有空格吧?要去除空格
------解决方案--------------------
估计有空格 ,用JQ方法去掉前后空格试试!