关于ajax data=="true"问题data是ture类型是String比较出来为什么是false?

u014490157 2014-05-29 04:15:30
$.ajax({
url:"verificationusername?username="+usernames,
type:"get",
dataType:"text",
success:function(data){
alert(typeof(data));//string
alert(data); //true
alert(data=="true"); //false
if(data=="true"){
alert("执行");

}
},
...全文
668 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_29873911 2015-09-15
  • 打赏
  • 举报
回复
已经被这个问题折磨过一次 ,原来是折磨解决的, 当时,我直接不反悔 true false ,改成返回 1 或 2了。。。。别人后来看逻辑都看不明白。。。害我还解释了一遍 PS:为什么论坛的验证码折磨难分辨啊,好烦
小律律 2014-05-30
  • 打赏
  • 举报
回复
引用 18 楼 u014490157 的回复:
问题解决了,是true后面有空格的问题,去下空格就行了!
看了下问题。思考了一下。回复了一下。。怎么也要给1分吧。太纠结了。再也不想回复技术贴了
jackson_fighting 2014-05-30
  • 打赏
  • 举报
回复
引用 16 楼 huanglin02 的回复:
[quote=引用 12 楼 u014490157 的回复:] [quote=引用 8 楼 SDN_SUPERUSER 的回复:] 用 if(data){ }
data是String类型的if(data)都是true[/quote]嗯。一般 if ()里面 都定义为true 了。到底为啥。估计是语法规定了吧(⊙o⊙)…不大清楚。一般都是默认为true的[/quote] 嗯,我误以为是boolean类型了。
u014490157 2014-05-30
  • 打赏
  • 举报
回复
问题解决了,是true后面有空格的问题,去下空格就行了!
u014490157 2014-05-30
  • 打赏
  • 举报
回复
引用 13 楼 suciver 的回复:
[quote=引用 11 楼 u014490157 的回复:] [quote=引用 5 楼 suciver 的回复:] 楼主用firebug看下返回的data是不是真的只是true还是说true后面跟了\r\n这样的换行
就是true[/quote] 你用网络的响应看是看不出true后面是不是有跟着空格这些的。如果你不用firebug来看 if(data=="true")改成if($.trim(data)=="true")利用jquery的取前后空字符[/quote] thanks过然是空格问题,去掉之后就好了
小律律 2014-05-30
  • 打赏
  • 举报
回复
引用 12 楼 u014490157 的回复:
[quote=引用 8 楼 SDN_SUPERUSER 的回复:] 用 if(data){ }
data是String类型的if(data)都是true[/quote]嗯。一般 if ()里面 都定义为true 了。到底为啥。估计是语法规定了吧(⊙o⊙)…不大清楚。一般都是默认为true的
u014490157 2014-05-30
  • 打赏
  • 举报
回复
引用 6 楼 shine333 的回复:
其实,真相是残酷的
alert(data == 1);
1 != "true"; 所以data != "true"
我是菜鸟,没怎么看懂,data不是String类型的吗和1比较本来就是false啊
u014490157 2014-05-30
  • 打赏
  • 举报
回复
引用 3 楼 huanglin02 的回复:
你可以不用这样啊。在后台 判断。是true 就写入 传过来。是false 就不传过来。或者你 这边 if(data==ture){ }这是试一下。没你这样弄过。一般都是后台判断的
这或许也是个办法,但是我想知道一下这个为什么不可以呢
suciver 2014-05-30
  • 打赏
  • 举报
回复
引用 11 楼 u014490157 的回复:
[quote=引用 5 楼 suciver 的回复:] 楼主用firebug看下返回的data是不是真的只是true还是说true后面跟了\r\n这样的换行
就是true[/quote] 你用网络的响应看是看不出true后面是不是有跟着空格这些的。如果你不用firebug来看 if(data=="true")改成if($.trim(data)=="true")利用jquery的取前后空字符
u014490157 2014-05-30
  • 打赏
  • 举报
回复
引用 8 楼 SDN_SUPERUSER 的回复:
if(data){ }
data是String类型的if(data)都是true
u014490157 2014-05-30
  • 打赏
  • 举报
回复
引用 5 楼 suciver 的回复:
楼主用firebug看下返回的data是不是真的只是true还是说true后面跟了\r\n这样的换行

就是true
jackson_fighting 2014-05-29
  • 打赏
  • 举报
回复
引用 5 楼 suciver 的回复:
楼主用firebug看下返回的data是不是真的只是true还是说true后面跟了\r\n这样的换行
++ 楼主的代码是没有问题的,看下数据问题。
jackson_fighting 2014-05-29
  • 打赏
  • 举报
回复

var data = "true"; data == true;
false
var data = true; data == true;
true
var data = true; typeof(data)
"boolean"
var data = "true"; typeof(data)
"string"
jackson_fighting 2014-05-29
  • 打赏
  • 举报
回复
if(data){ }
jiabiaoli 2014-05-29
  • 打赏
  • 举报
回复
var num=1; var str="true"; var b=true; alert(typeof(num));//number alert(typeof(str));//string alert(typeof(b));//boolean alert(str); //true alert(str=="true");//true 不明觉厉
shine333 2014-05-29
  • 打赏
  • 举报
回复
其实,真相是残酷的
alert(data == 1);
1 != "true"; 所以data != "true"
suciver 2014-05-29
  • 打赏
  • 举报
回复
楼主用firebug看下返回的data是不是真的只是true还是说true后面跟了\r\n这样的换行
小律律 2014-05-29
  • 打赏
  • 举报
回复
引用 2 楼 D_re_am 的回复:
用===试试?
别闹了
小律律 2014-05-29
  • 打赏
  • 举报
回复
你可以不用这样啊。在后台 判断。是true 就写入 传过来。是false 就不传过来。或者你 这边 if(data==ture){ }这是试一下。没你这样弄过。一般都是后台判断的
D_re_am 2014-05-29
  • 打赏
  • 举报
回复
用===试试?
加载更多回复(1)
内容概要:本文系统研究了Picard迭代法在非线性常微分方程参数估计中的应用,深入阐述了该方法的数学原理及其在参数辨识中的收敛性与稳定性优势。通过构建最小化误差的目标函数,并结合数值积分技术,采用迭代方式逐步逼近系统的真实参数值,有效解决了非线性动态系统中因缺乏解析解而难以进行精确建模的问题。文中提供了完整的Matlab代码实现,涵盖模型定义、迭代求解、参数更新与结果可视化等关键环节,增强了方法的可操作性与工程实用性。研究通过典型非线性系统案例验证了算法的有效性,展示了其在科学计算与工程建模中的良好适应性与推广潜力。; 适合人群:具备常微分方程理论、数值分析基础及Matlab编程能力,从事系统建模、参数辨识、动力学仿真等相关方向的研究生、科研人员和工程技术开发者。; 使用场景及目标:①解决实际工程中非线性微分方程模型的未知参数估计问题;②深入理解Picard迭代法在科学计算中的实现机制与数值特性;③为学术论文复现、科研项目开发或课程设计提供可运行、易调试的技术方案与代码参考。; 阅读建议:建议读者结合文中的数学推导与Matlab代码逐行分析,重点关注迭代流程、目标函数构造与数值积分的耦合实现,通过修改模型结构或噪声条件进行扩展实验,以深化对算法鲁棒性与适用边界的理解。配套资源可通过指定公众号和网盘链接获取,推荐同步学习以加速科研进程。

81,109

社区成员

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

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