回 帖 发 新 帖 刷新版面

主题:求教:数据计算?

各位老师好:我想做个数据计算,在一个表单上设多个文本框,text1,text2,,,在每个文本框输入数字,其每个文本框的数字连加,我在interactivechange加入thisform.text2.value=thisform.text1.value+thisform.text2.value
thisform.text3.value=thisform.text2.value+thisform.text3.value.........
 1.这种设法对么?
 2.为什么数字有时翻倍呢或不对呢?
谢谢老师指教

回复列表 (共6个回复)

沙发

interactivechange:每键入一个字符都会引发这个事件,所以你会发现计算结果不准确。
添加一个命令按钮,待各文本框数据输入完毕后,执行这个命令按钮。

或在lostfocus 事件里写。

板凳

thisform.text2.value=thisform.text1.value+thisform.text2.value+thisform.text3.value.........

请注意:thisform.text2.value,每输入一个数,它就会增加一次,而每一次又会增加它上次得到的值,如果等号后面把 +thisform.text2.value 排除在外就不会有问题了。
建议使用 WITH ..... ENDWITH 简化代码。
WITH thisform
  .text2.value = .text1.value + .text3.value .........
ENDWITH

3 楼

thisform.text2.value=thisform.text1.value+thisform.text2.value+thisform.text3.value.........

请注意:thisform.text2.value,每输入一个数,它就会增加一次,而每一次又会增加它上次得到的值,如果等号后面把 +thisform.text2.value 排除在外就不会有问题了。
建议使用 WITH ..... ENDWITH 简化代码。
WITH thisform
  .text2.value = .text1.value + .text3.value .........
ENDWITH

4 楼

thisform.text2.value=thisform.text1.value+thisform.text2.value+thisform.text3.value.........

请注意:thisform.text2.value,每输入一个数,它就会增加一次,而每一次又会增加它上次得到的值,如果等号后面把 +thisform.text2.value 排除在外就不会有问题了。
建议使用 WITH ..... ENDWITH 简化代码。
WITH thisform
  .text2.value = .text1.value + .text3.value .........
ENDWITH

5 楼

wzxc老师,我明白了。另外表单上的文本框里数字输入运行一次以后,如何刷新,再输入新的数字。相当于关闭表单重新打开表单。能有个按钮最好,刷新输入,不用关闭。(没有数据表,无法添加按钮)

6 楼

成了,用=0即可。

我来回复

您尚未登录,请登录后再回复。点此登录或注册