| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1175 人关注过本帖
标题:大家请看一下,这个怎样计算? (此问题已解决:鸣谢:ayue222,jkll007123,QQQQQ ...
只看楼主 加入收藏
zhongx
Rank: 2
等 级:论坛游民
威 望:1
帖 子:370
专家分:42
注 册:2007-8-16
收藏
得分:0 
回复:(QQQQQQQQQQQQ)应该用捕获事件改变时
您愿意为这个问题,写段代码吗?
包含小数点的数值时.

感动常在,每天进步一点点,开心学习在编程论坛。
http://www.
2007-08-17 13:49
zhongx
Rank: 2
等 级:论坛游民
威 望:1
帖 子:370
专家分:42
注 册:2007-8-16
收藏
得分:0 
回复:(ayue222)
A乘B的积,未能反映在表单框C,基本上没有执行过计算............

要求功能像 [ 作者:jkll007123 ] 给出的代码所实现的功能一样,

如果能连 [包含小数点的数值] 也能够计算,那就更好了,

因为很多的数据都包含着 小数点的.

感动常在,每天进步一点点,开心学习在编程论坛。
http://www.
2007-08-17 14:18
ayue222
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:341
专家分:0
注 册:2007-7-25
收藏
得分:0 
<script language="javascript">
function show()
{
document.all.total.value=parseInt(document.all.num.value*document.all.unit.value).toFixed(0);
}
function show1()
{
document.all.result.value=parseInt(document.all.total.value-document.all.num1.value).toFixed(0);
}
</script>

用6楼朋友现成的 了 ....之前那个太糙了 ...
2007-08-17 14:21
jkll007123
Rank: 1
等 级:新手上路
威 望:1
帖 子:64
专家分:0
注 册:2007-7-8
收藏
得分:0 
要计算小数点的把parseInt改成parseFloat就可以了

習慣瞇醉,禧歡跟上帝窷兲,像变澀龙般虚伪,如气候那样善变.人脸背后流淌着恶魔的血,一路向前,猦猦癫癫.
2007-08-17 14:29
QQQQQQQQQQQQ
Rank: 1
等 级:新手上路
帖 子:159
专家分:0
注 册:2007-8-10
收藏
得分:0 
[QUOTE]<form name="form1">
数量:<input type="text" name="aa_1" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
单价:<input type="text" name="aa_2" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
总价:<input type="text" name="aa_3"><br>
付款:<input type="text" name="aa_4" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
找零:<input type="text" name="aa_5"><br>
</form>
<script language="javascript">
function bb(){
if(document.form1.aa_1.value!="" && document.form1.aa_2.value!=""){
document.form1.aa_3.value=(document.form1.aa_1.value*document.form1.aa_2.value).toFixed(2);
if(document.form1.aa_4.value!=""){
document.form1.aa_5.value=document.form1.aa_4.value-document.form1.aa_3.value;
}
}
}
</script>[/QUOTE]

我只会一点正则表达式
onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"这个正则表达式可以改一下,只让用户输入一个小数点

本人水平有限,所说之话不可全信,也不可不信,
2007-08-17 15:10
QQQQQQQQQQQQ
Rank: 1
等 级:新手上路
帖 子:159
专家分:0
注 册:2007-8-10
收藏
得分:0 
想了一下,可以写两个正则,判断是否以有小数点,有执行

/[^\d]/g

没有就执行

[^\d\.]/g

这样就能保证用户正确输入

本人水平有限,所说之话不可全信,也不可不信,
2007-08-17 15:19
zhongx
Rank: 2
等 级:论坛游民
威 望:1
帖 子:370
专家分:42
注 册:2007-8-16
收藏
得分:0 
以下是引用jkll007123在2007-8-17 14:29:27的发言:
要计算小数点的把parseInt改成parseFloat就可以了

把parseInt改成parseFloat还是未成功..............


感动常在,每天进步一点点,开心学习在编程论坛。
http://www.
2007-08-17 17:06
zhongx
Rank: 2
等 级:论坛游民
威 望:1
帖 子:370
专家分:42
注 册:2007-8-16
收藏
得分:0 
以下是引用ayue222在2007-8-17 14:21:12的发言:
<script language="javascript">
function show()
{
document.all.total.value=parseInt(document.all.num.value*document.all.unit.value).toFixed(0);
}
function show1()
{
document.all.result.value=parseInt(document.all.total.value-document.all.num1.value).toFixed(0);
}
</script>

用6楼朋友现成的 了 ....之前那个太糙了 ...

按这个方法得出的结果是:

表单C和表单E的数值不显示小数点,
若是 0.1 - 0.5 计算时当 0 , 0.6 - 0.9 当 1 .

结论是: 表单C和表单E的得数不正确.

能否在这个基础上加以改进?


感动常在,每天进步一点点,开心学习在编程论坛。
http://www.
2007-08-17 17:28
ayue222
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:341
专家分:0
注 册:2007-7-25
收藏
得分:0 
<script language="javascript">
function show()
{
document.all.total.value=(document.all.num.value*document.all.unit.value).toFixed(2);
}
function show1()
{
document.all.result.value=(document.all.total.value-document.all.num1.value).toFixed(2);
}
</script>

干脆不要取整咯...偶也不知道这样行不行 ...JS很菜滴说 ....

2007-08-17 17:36
zhongx
Rank: 2
等 级:论坛游民
威 望:1
帖 子:370
专家分:42
注 册:2007-8-16
收藏
得分:0 
以下是引用QQQQQQQQQQQQ在2007-8-17 15:10:23的发言:
<form name="form1">
数量:<input type="text" name="aa_1" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
单价:<input type="text" name="aa_2" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
总价:<input type="text" name="aa_3"><br>
付款:<input type="text" name="aa_4" onpropertychange="bb()" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"><br>
找零:<input type="text" name="aa_5"><br>
</form>
<script language="javascript">
function bb(){
if(document.form1.aa_1.value!="" && document.form1.aa_2.value!=""){
document.form1.aa_3.value=(document.form1.aa_1.value*document.form1.aa_2.value).toFixed(2);
if(document.form1.aa_4.value!=""){
document.form1.aa_5.value=document.form1.aa_4.value-document.form1.aa_3.value;
}
}
}
</script>


我只会一点正则表达式
onkeyup="this.value=this.value.replace(/[^\d\.]/g,'')"这个正则表达式可以改一下,只让用户输入一个小数点

按照您的这个方法可行,您可否在 [总价] 和 [付款] 之间加上 [减免] 和 [实收] 这二个项目呢?


感动常在,每天进步一点点,开心学习在编程论坛。
http://www.
2007-08-17 17:42
快速回复:大家请看一下,这个怎样计算? (此问题已解决:鸣谢:ayue222,jkll007123, ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028707 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved