请帮忙看段JS代码

热血大婶 2012-10-12 01:23:23
<div xpath="//FWB_DASHBOARDset">
<div class="dashboard-item" repeat="yes" xpath="FWB_DASHBOARD">
<div class="dashboard-sign"><img class="img01" src="images/circle_blue_16.png" /></div>
………………
<span class="发送状态" xpath="status"></span>
<span class="发送时间" xpath="send_time"></span>
</div>
</div>

function pictureChoose(){
if($(".发送状态").html()=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
}
else{
if($('.发送状态').html()=='SEND WAITING'){
$(".img01").attr("src","images/circle_yellow_16.png");
}
else{
$(".img01").attr("src","images/circle_red_16.png");
}
}
}

如上,发送状态是从XML文件中取得的,想根据发送状态不同显示不同的图片,可是上面代码的效果是不管状态如何总是显示images/circle_red_16.png这个图片,应该怎样改?
...全文
255 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
a3899378 2012-10-12
  • 打赏
  • 举报
回复
绝对没有取到值 要不然不会是red
zhaodan2000 2012-10-12
  • 打赏
  • 举报
回复
$(".发送状态").html()获取到的内容是'undefined'
应该是$(".发送状态")这个获取到的对象并不是你预想中要的对象
泡泡鱼_ 2012-10-12
  • 打赏
  • 举报
回复
在哪里显示的呀?我在你贴出来的代码里没看到呀。标出来瞅瞅
热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 的回复:]
那你先去获取XML中的状态值再说。你放在这里也没用呀
[/Quote]获取到了呀,都在页面上显示了。而且我这个函数是放在获取状态值函数之后的。
泡泡鱼_ 2012-10-12
  • 打赏
  • 举报
回复
那你先去获取XML中的状态值再说。你放在这里也没用呀
热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]
。。。。你
$(".发送状态").html()
根本就没有存储ok或者是'SEND WAITING'呀,所以每次都是
images/circle_red_16.png

你可以使用类似下面的方法,当然具备的状态存储你可以根据你自己的需求做调整:

JScript code
function pictureChoose(){
if($(".发送状态").attr("stat……
[/Quote]
存储了。<span class="发送状态" xpath="status"></span>
这其中xpath是个路径,通过它可以找到XML文件里的一个节点,并把这个节点的值(ok或SEND WAITING或其它)抓出来显示在span里,我现在就是要根据这个span里显示的状态值,来显示不同图片
泡泡鱼_ 2012-10-12
  • 打赏
  • 举报
回复
。。。。你
$(".发送状态").html()
根本就没有存储ok或者是'SEND WAITING'呀,所以每次都是
images/circle_red_16.png

你可以使用类似下面的方法,当然具备的状态存储你可以根据你自己的需求做调整:
function pictureChoose(){
if($(".发送状态").attr("status")=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
$(".发送状态").attr("status",'SEND WAITING')

}
else{
if($('.发送状态').attr('status')=='SEND WAITING'){
$(".img01").attr("src","images/circle_yellow_16.png");
$(".发送状态").removeAttr('status')

}
else{
$(".img01").attr("src","images/circle_red_16.png");
$(".发送状态").attr('status','ok')
}
}
}


热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]
怎么会不支持alert,你确定调用到这个方法了吗?
另外,如果$(".发送状态").html() = "发送状态",当然会走到最后一个else里面去了
[/Quote]
调用到了,不然document.write怎么可以。我知道为什么会到最后一个else,现在的关键是.html()不行,那么应该用什么方法才行
kongxh1218 2012-10-12
  • 打赏
  • 举报
回复
怎么会不支持alert,你确定调用到这个方法了吗?
另外,如果$(".发送状态").html() = "发送状态",当然会走到最后一个else里面去了
zhouhai3032 2012-10-12
  • 打赏
  • 举报
回复
另外这中类型的条件判断使用switch感觉更好些。
zhouhai3032 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 1 楼 的回复:
加个alert,看看发送状态到底是什么:

function pictureChoose(){
alert($(".发送状态").html());
if($(".发送状态").html()=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
}
else{
if($('.发送状态'……
[/Quote]

首先,对用中文表示类名表示惊叹,自己尝试了下,居然有效!
另外,楼主你的这个试验不是说明了$(".发送状态").html()的结果为“发送状态”四个字啊,当然是red的那张图了。请检查你的$(".发送状态").html()是否是xml取得的值。
热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
如果已经有值,那么像上面说的,在方法里面alert一下这个状态,看一看值是什么,如果不弹出信息,说明没有调用到这个方法
[/Quote]值是:发送状态
義東 2012-10-12
  • 打赏
  • 举报
回复
如果已经有值,那么像上面说的,在方法里面alert一下这个状态,看一看值是什么,如果不弹出信息,说明没有调用到这个方法
热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
看看你是在什么时候调用这个方法的,调用时发送状态是否已经有值
[/Quote]
我是在最末尾调用这个方法的,此时发送状态应该已经有值了
義東 2012-10-12
  • 打赏
  • 举报
回复
看看你是在什么时候调用这个方法的,调用时发送状态是否已经有值
热血大婶 2012-10-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
加个alert,看看发送状态到底是什么:

function pictureChoose(){
alert($(".发送状态").html());
if($(".发送状态").html()=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
}
else{
if($('.发送状态').h……
[/Quote]不支持alert方法,用document.write($(".发送状态").html());页面上只出现发送状态四个字,其它什么都没了。
暗夜螃蟹 2012-10-12
  • 打赏
  • 举报
回复


//这样写是不是好点!!
function pictureChoose(){
alert($(".发送状态").html());
if($(".发送状态").html()=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
}else if($('.发送状态').html()=='SEND WAITING'){
$(".img01").attr("src","images/circle_yellow_16.png");
}else{
$(".img01").attr("src","images/circle_red_16.png");
}
}



kongxh1218 2012-10-12
  • 打赏
  • 举报
回复
加个alert,看看发送状态到底是什么:

function pictureChoose(){
alert($(".发送状态").html());
if($(".发送状态").html()=="ok"){
$(".img01").attr("src","images/circle_green_16.png");
}
else{
if($('.发送状态').html()=='SEND WAITING'){
$(".img01").attr("src","images/circle_yellow_16.png");
}
else{
$(".img01").attr("src","images/circle_red_16.png");
}
}
}

87,991

社区成员

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

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