<script type="text/javascript">
$(".wz>ul>li").hover(function(event) {
var i=$(".wz>ul>li").index(this);
var v=$(".wz>ul>li:eq("+i+")").text();
alert(v);
if (v=="最新招租")
{//var t="z";
alert("1");
}
else
{//var t="m";
alert("2");
}
});
</script>
如代码:本地xp电脑执行正常可以输出1,但是上传到服务器,无论如何只能输入2,就是判断false,已经对比过,判断语句前面输出的v是最新招租。就是判断是错的!急急急!
刚才我又重新测试了:就中文全部改为数字,就是LI里面的text改为数字是可以比较判断成功,如果是字母或中文不行!求解!
是不是在服务器上输出的值带着空格啊什么的?
应该没有的。是不是 var v=$(".wz>ul>li:eq("+i+")").text(); 这样获取的值包含着其他数据?
我直接v=“最新招租”。再判断却是可以的
我又用indexof 判断是否包含,也不行!
@日月黄土: 你把text()换成val()试一下。
@日月黄土: 要不你把静态页面的代码发上来,我试下我这边行不行。
@LCM: <div > <ul>
<li >最新找店</li>
<li >最新招租</li>
<li >最新售铺</li>
</ul></div>
<script type="text/javascript">
//
$(".wzbt1>ul>li").hover(function(event) {
var i=$(".wzbt1>ul>li").index(this);
var v=escape($(".wzbt1>ul>li:eq("+i+")").text());
alert(v);
//var v="最新招租";
if (v==escape("最新招租"))
{//var types="zhu";
alert("1");
}
else
{//var types="mai";
alert("2");
}
});
</script>
这个是完整的代码了
@日月黄土: 我在本地测试是正常!传上去就不行了,检查了js等都是对的
@日月黄土: 相同页面所有的js已经去掉了,测试不行!
@日月黄土: 我测的,在IE8中不可以,在chrome中和firefox中是可行的。
@LCM: 晕,还是我开始说的,可能有空格吧。在IE中我比较前先去空格也就可以了。
v = $.trim(v);
@LCM: 你加上v = $.trim(v);这句去掉空格再比较,就没问题了的。
@LCM: 我测试一下!
@LCM: 晕倒!
@LCM: 太感谢你了,我也测试了,果然是空格的问题。在这里再问下:提示jQuery里面的guid为空或不是对象。是什么问题?
@日月黄土: 应该是没有找到jquery文件吧,比如你哪个js文件是基于jquery的,但是没有引用jquery文件了,或没能找到那个版本的jquery文件。
@日月黄土: 网上搜的一段话也这样说的。
出现这个错误的原因是缺少调用js文件,从网上查到的解决办法,将“<script type="text/javascript" src="templets/js/jquery.js"></script>”这个放到报错页面的<head>里面就能解决了。
“guid为空或不是对象”错误是不是消失了?呵呵
@LCM: 但是js代码可以运行的,我怎么判断我代码应该是哪个版本的?
@日月黄土: 一种可能是没引用jquery,另一种可能是引用了不一样版本的jquery。你的js可以运行的,那应该是后者。
一般用新版本的jquery应该不会报这个错的吧。
是不是文件编码问题啊
你意思是获取的v编码不一样吗?但是输出是一样的呀
@日月黄土: 我用了escape 转换了也是不行的
@日月黄土:
不是获取的v不对,是"最新招租"不对
什么浏览器?jQuery版本是多少?