在线等:javascript中关于货币值大小比较的问题

bazhu 2004-04-06 01:10:52
譬如本人test.htm中:
<SCRIPT language=javascript>
<!--
function checkvalue()
{
if (document.test.text1.value > document.test.text2.value)
{alert("抱歉,text2的金额比text1的金额小,操作失败!");
document.test.AEditmoney.focus();
return (false);
}
return true;
}
//-->
</SCRIPT>
<FORM name=test onsubmit="return checkvalue()" action="xx.htm" method=post>
...........
文本框略...
...........
<INPUT type=submit value="确定">
</form>

以上测试后发现实际上只比较数值第一个数的大小,而不是整体,譬如text1的值为23.3,text2的值为21.55,判断是没问题,但当text2的值为3、4、5、6、7比23.3第一个数2大时,就出判断23.3比4小的情况。

如何解决?谢谢大家。
...全文
80 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bazhu 2004-04-06
  • 打赏
  • 举报
回复
非常感谢fason(阿信)、 baby21st(流浪的脚)
baby21st 2004-04-06
  • 打赏
  • 举报
回复
返回由字符串转换得到的浮点数。

parseFloat(numString)
必选项 numString 参数是包含浮点数的字符串。

说明
parseFloat 方法返回与 numString 中保存的数相等的数字表示。如果 numString 的前缀不能解释为浮点数,则返回 NaN (而不是数字)。

parseFloat("abc") // 返回 NaN。
parseFloat("1.2abc") // 返回 1.2。
可以用 isNaN 方法检测 NaN。
fason 2004-04-06
  • 打赏
  • 举报
回复
parseFloat(document.test.text1.value)
bazhu 2004-04-06
  • 打赏
  • 举报
回复
其中:document.test.AEditmoney.focus();写错了,应为document.test.text1.focus();
总之不是那里出错。

就是text1.value 去比较 text2.value 时,怎么把整个数都进行判断,而不是数的第一个值大小。

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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