ajax 中的 js中的全局变量 boolean问题

988kook 2011-07-16 10:33:43

alert(bl);
if(bl){
$("#skipstep").show();
}
else
{
$("#skipstep").hide();
}
bl=false;

如题 在ajax js中 为啥alert(bl)==false 为啥执行的show()
bl是全局变量
...全文
353 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
988kook 2011-07-16
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 fanchuanzhidu 的回复:]

你alert(typeof bl == 'boolean') 看bl的类型是不是boolean类型

JScript code
if(bl === true){ //这么写就可以确保bl必须要是boolean类型
$("#skipstep").show();
}
else
{
$("#skipstep").hid……
[/Quote]
呼呼~ 谢谢了 原来由后台的到的数据是string类型的 我把全局变量也变成了 bl="false"
其他朋友碰到了要记得 判断为true的时候 if(bl=="Ture") 记得true的首字母大写 false则不需要if(bl=="false")
豆虫 2011-07-16
  • 打赏
  • 举报
回复
你alert(typeof bl == 'boolean') 看bl的类型是不是boolean类型

 if(bl === true){ //这么写就可以确保bl必须要是boolean类型
$("#skipstep").show();
}
else
{
$("#skipstep").hide();
}
bl=false;
988kook 2011-07-16
  • 打赏
  • 举报
回复
沉了么
988kook 2011-07-16
  • 打赏
  • 举报
回复
没人晓得么 顶起
问题估计就是http://fightplane.iteye.com/blog/60826
但是偶不知道怎么解决呢
988kook 2011-07-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 truelove12 的回复:]

tbs=QLflow.EveryStep(a,streamid).value;
这个boolean值会有Rows属性吗????
[/Quote]
tbs=QLflow.EveryStep(a,streamid).value;
bl=tbs.Rows[0].ccc7;
/*
*tbs是一个datatable tbs.Rows[0].ccc7 [0]就是第0行;列名为:ccc7 的那一个单元的数据 ccc7这个数据库中的数据类型为boolean
*/
  • 打赏
  • 举报
回复
tbs=QLflow.EveryStep(a,streamid).value;
这个boolean值会有Rows属性吗????
988kook 2011-07-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 fanchuanzhidu 的回复:]

楼主这段代码在ajax中标明下在什么位置 用下面这个模板说下 否则单看这段代码无法理解你的意思

JScript code
var bl =....
ajax(function(){
//假设这是回调,把bl在哪定义 在哪判断说下
})
[/Quote]

我开发工具是net js里调用页面的后台代码 就是这样子 QLflow.EveryStep(a,streamid).value 这返回一个boolean
豆虫 2011-07-16
  • 打赏
  • 举报
回复
楼主这段代码在ajax中标明下在什么位置 用下面这个模板说下 否则单看这段代码无法理解你的意思

var bl =....
ajax(function(){
//假设这是回调,把bl在哪定义 在哪判断说下
})
988kook 2011-07-16
  • 打赏
  • 举报
回复

最外边有个bl=false;
第一步:
tbs=QLflow.EveryStep(a,streamid).value;
bl=tbs.Rows[0].ccc7;
alert("showtext-->"+bl);
showstepbut(a,b);
第二步:
alert(bl);
if(bl){
$("#skipstep").show();
}
else
{
$("#skipstep").hide();
}
bl=false;

回答问题前 请参考下这个http://fightplane.iteye.com/blog/60826
我代码里没有 opend呀什么的
988kook 2011-07-16
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 truelove12 的回复:]

我不知道bl的数据类型是什么,但是根据上下文判断,bl的数据类型应该是string
if(bl)
对于非空字符串,执行Boolean()函数时,返回值为true
所以会执行.show那一句。
[/Quote]
请看标题
bl在最外边定义为bl=false;
挨踢直男 2011-07-16
  • 打赏
  • 举报
回复
alert(bl);
if(bl==true){
$("#skipstep").show();
}
else
{
$("#skipstep").hide();
}
bl=false;
  • 打赏
  • 举报
回复
我不知道bl的数据类型是什么,但是根据上下文判断,bl的数据类型应该是string
if(bl)
对于非空字符串,执行Boolean()函数时,返回值为true
所以会执行.show那一句。
挨踢直男 2011-07-16
  • 打赏
  • 举报
回复
var b = "false";
alert(b)
if(b)
{
alert("x")
}
会不会是这种情况?

87,989

社区成员

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

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