jquery比较两个对象的值,急!!

liladlove 2012-09-21 10:06:53
看代码

$(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 = document.getElementById("hdfTabId").value;
document.getElementById(TabId).className = "hover";
$(this).removeClass("hover");
}

}
);
});



已经确认我的attrid 和text的内容是一样的,但是ifif (text == attrid)为什么始终未false,不管怎样都不弹“1”出来
...全文
581 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
飞火流星02027 2012-09-21
  • 打赏
  • 举报
回复
一个是文本,一个是,类型不一样,先转换成同一类型再作比较:



val()
获得第一个匹配元素的当前值。
在 jQuery 1.2 中,可以返回任意元素的值了。包括select。如果多选,将返回一个数组,其包含所选的值。

text()
取得所有匹配元素的内容。
结果是由所有匹配元素包含的文本内容组合起来的文本。这个方法对HTML和XML文档都有效。
nightost 2012-09-21
  • 打赏
  • 举报
回复
那是肯定,判断不对就要考虑他们值的类型和长度(是否包含空格),淡定调试。
liladlove 2012-09-21
  • 打赏
  • 举报
回复
内容是一样的,必须进行去空格处理,真是郁闷!!
nightost 2012-09-21
  • 打赏
  • 举报
回复
你确定两个alert出来的值一样么
liladlove 2012-09-21
  • 打赏
  • 举报
回复

<asp:HiddenField ID="hdfAttrID" ClientIDMode="Static" runat="server" />
<asp:HiddenField ID="hdfTabId" ClientIDMode="Static" runat="server" Value="Tab1" />
<ul id="TabPage1">
<li id="Tab1" class="hover" onclick="switchTab('TabPage1','Tab1','病种');">病种</li>
<li id="Tab2" class="headtestcss" onclick="switchTab('TabPage1','Tab2','病因');" >病因</li>
<li id="Tab3" class="headtestcss" onclick="switchTab('TabPage1','Tab3','治疗');" >治疗</li>
<li id="Tab4" class="headtestcss" onclick="switchTab('TabPage1','Tab4','预防');" >预防</li>
</ul>




function switchTab(tabpage, tabid, attrid) {
var oItem = document.getElementById(tabpage);
for (var i = 0; i < oItem.children.length; i++) {
var x = oItem.children(i);
if (x.id != tabid) {
x.className = "";
}
}
document.getElementById(tabid).className = "hover";

document.getElementById("hdfAttrID").value = attrid;
document.getElementById("hdfTabId").value = tabid;
}

要实现的效果是鼠标滑动到li节点上,改变样式,离开的时候移除样式并恢复到上次选中的节点
nightost 2012-09-21
  • 打赏
  • 举报
回复
嗯,alert(text.length),还有,来html
风.foxwho 2012-09-21
  • 打赏
  • 举报
回复
去除两端空格!
最好把HTML页面发出来
liladlove 2012-09-21
  • 打赏
  • 举报
回复
不可能没获取到值的,alert(text)和alert(attrid)都能弹出值!而且是一样的值!
nightost 2012-09-21
  • 打赏
  • 举报
回复
给出你的html,我的猜想:你的val()或者text()有一个没有获到值可能,是用在表单上么

87,907

社区成员

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

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