首页
新闻
论坛
群组
Blog
文档
下载
读书
Tag
网摘
搜索
.NET
Java
游戏
视频
人才
外包
培训
数据库
书店
程序员
欢迎您:
游客
| 退出
| 登录
注册
帮助
我的帖子
我参与的帖子
我的空间
我的网摘
CSDN
CSDN社区
Web 开发
Ajax
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
生成帖子
置顶
推荐(加精)
取消推荐(加精)
锁定帖子
移动帖子
取消引用
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
大侠们帮我看看一个js的问题
[已结贴,结贴人:warrenv33]
加为好友
发送私信
在线聊天
warrenv33
等级:
可用分等级:
贫农
总技术专家分:
2
总技术专家分排名:
280069
揭帖率:
100.00%
发表于:
2008-08-21 15:47:15
楼主
为什么我在"t11"输入5,"t22"输入10的时候,v1>v2是true呢?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>test.html </title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
This is my HTML page.
<br>
<input type="text" id="t11" value="" />
<input type="text" id="t22" value="" />
<input type="button" id="b1" value="click" onclick="gocheck()" />
</body>
<script type="text/javascript">
function gocheck() {
var v1 = document.getElementById("t11").value;
var v2 = document.getElementById("t22").value;
alert(v1+" | "+v2+" | "+(v1==5)+" | "+(v2==10)+" | "+(v1>v2));
}
</script>
</html>
问题点数:
50
回复次数:
5
显示所有回复
显示星级回复
显示楼主回复
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
xumv_com
该用户很懒
等级:
可用分等级:
贫农
总技术专家分:
1039
总技术专家分排名:
20184
发表于:
2008-08-21 16:31:55
1
楼 得分:
20
问题解决:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>test.html </title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
This is my HTML page.
<br>
<input type="text" id="t11" value="" />
<input type="text" id="t22" value="" />
<input type="button" id="b1" value="click" onclick="gocheck()" />
</body>
<script type="text/javascript">
function gocheck() {
var v1 = document.getElementById("t11").value*1;
var v2 = document.getElementById("t22").value*1;
alert(v1+" ¦ "+v2+" ¦ "+(v1==5)+" ¦ "+(v2==10)+" ¦ "+(v1>v2));
}
</script>
</html>
乘以1过后把v1简单转换为数值
不然v1,v2都是以字符串处理
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
pippe
等级:
可用分等级:
中农
总技术专家分:
2081
总技术专家分排名:
10262
发表于:
2008-08-21 16:39:07
2
楼 得分:
30
var v1 = document.getElementById("t11").value;
var v2 = document.getElementById("t22").value;
取出来的是string类型的
string类型的对比是比第一个字,如果第一个字相等再比第二个,数以此类推
"5"的第一个字"5","10"的第一个字"1"
"5">"1",所以"5">"10"
如果要做数字对比需要转换成数字
var v1 = parseInt(document.getElementById("t11").value);
var v2 = parseInt(document.getElementById("t22").value);
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
happy002
狂奔蜗牛
等级:
可用分等级:
中农
总技术专家分:
2304
总技术专家分排名:
9701
发表于:
2008-08-21 16:41:59
3
楼 得分:
0
ls正解~
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
okvee
九为
等级:
可用分等级:
长工
总技术专家分:
0
总技术专家分排名:
311804
发表于:
2008-08-21 16:47:55
4
楼 得分:
0
javscript是弱语意,除了一楼说的,还可以强制转化
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
myvicy
微尘
等级:
可用分等级:
富农
总技术专家分:
67431
总技术专家分排名:
106
3
3
发表于:
2008-08-21 17:15:03
5
楼 得分:
0
function gocheck() {
var v1 = parseInt(document.getElementById("t11").value);
var v2 = parseInt(document.getElementById("t22").value);
alert(v1+" ¦ "+v2+" ¦ "+(v1==5)+" ¦ "+(v2==10)+" ¦ "+(v1>v2));
}
需要转化成数字,否则会按字符串比较。
修改
删除
举报
引用
回复
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
网站简介
-
广告服务
-
网站地图
-
帮助
-
联系方式
-
诚聘英才
-
English
-
问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
abc推荐给好友