发新话题
打印

续,运算的问题~有新进展了~问题已解决,谢谢我自己~~~

本主题由 随风 于 2008-5-12 11:44 移动

续,运算的问题~有新进展了~问题已解决,谢谢我自己~~~

还是上次那个页,有所改动,结果出现新的问题。
代码就不贴了,直接放附件吧。
问题:
1。总计不显示结果。
2。我想让小计被单独修改的时候,总计也自动运算出结果。例:

具体代码请看附件里的test.html

===================================================================================

这个我搞定了。修改方法如下:
复制内容到剪贴板
代码:

function getTotal(oStr){
var slObj,djObj,zmObj,xjobj,zzzbObj,zzgqObj,azzzbObj,azzgqObj,zj_money;
eval("slObj=document.getElementById('"+oStr+"_sl').value;");
eval("djObj=document.getElementById('"+oStr+"_dj').value;");
eval("zmObj=document.getElementById('"+oStr+"_zmoney');");
str = slObj * djObj;
zmObj.value=str;
eval("zzzbObj=document.getElementById('zzzb_zmoney').value;");
eval("zzgqObj=document.getElementById('zzgq_zmoney').value;");
eval("xjObj=document.getElementById('xj_money');");
str1 = zzzbObj*1 + zzgqObj*1;
xjObj.value=str1;
eval("azzzbObj=document.getElementById('azzzb_zmoney').value;");
eval("azzgqObj=document.getElementById('azzgq_zmoney').value;");
eval("axjObj=document.getElementById('axj_money');");
str2 = azzzbObj*1 + azzgqObj*1;
axjObj.value=str2;
eval("axjObj=document.getElementById('axj_money').value;");
eval("xjObj=document.getElementById('xj_money').value;");
eval("zjObj=document.getElementById('zj_money');");
str3 = xjObj*1 + axjObj*1;
zjObj.value=str3;
}
问题总结,就一个字引起的,乱~~~
代码写的太乱,少少的整理了一下,就解决了。
但一个问题解决了,还有个问题。
就是上边图片上画的那个问题。
两个小记,当我手动修改其中一项的时候,总记自动运算出结果。
这个还没解决,谁要是有时间帮我看看。
我也继续研究~
谢谢大家~
===================================================================================
好了这个我也给搞定了。
我弄明白了,就是重新读出原来的值,再计算一便,还有就是要注意运算顺序的问题。
现在正在忙,我改完的页以后再发上来~~为了帮助那些和一样菜的小鸟门~~~

[ 本帖最后由 kingsoft01 于 2008-5-11 15:43 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP

一个奇怪的问题,,关注

TOP

你自己看看你的小计的input里面有没有事件触发计算的函数?
另外,你这个函数写得好乱,要传参数,那就不必在函数里用哪么多id常量,要用常量就别传参数。混乱不堪。还有一点就是:
复制内容到剪贴板
代码:
eval("xjObj=document.getElementById('xj_money');");
eval("axjObj=document.getElementById('axj_money');");
str3 = (xjObj*1) + (axjObj*1);
zjObj.value=str3;
看看这里出了什么问题?
xjObj和axjObj是对象,你让他们相加?至少是str3 = (xjObj.vlaue*1) + (axjObj.value*1);吧~
eval没事最好也别用。。。你的编程风格好奇怪·~
//爱一个人就是在拔通电话时,忽然不知道说什么好,原来只是想听听那熟悉的声音,原来真正想拔动的只是自已心底深处的一根弦

TOP

你原来的代码中 20行这句
eval("zjObj=document.getElementById('zj_money');");
有问题,,,

但是我也不知道有什么问题,我复制你的17行
eval("axjObj=document.getElementById('axj_money');");
到eval("zjObj=document.getElementById('zj_money');");的位置,然后把axjObj换成zjobj,axj_money换成zj_money,就好了

另外把xjObj*1换成(xjObj.value)*1,axjObj*1换成(axjObj.value)*1

TOP


java吧
发错地方了
我相信我自己!
这种相信源自于你们!

TOP

引用:
原帖由 淘沙浪 于 2008-5-9 10:35 发表
你原来的代码中 20行这句
eval("zjObj=document.getElementById('zj_money');");
有问题,,,

但是我也不知道有什么问题,我复制你的17行
eval("axjObj=document.getElementById('axj_money');");
到eval("zjObj=document. ...
这个地方的问题我找到了。
eval("zjObj=document.getElementById('zj_money');");(我这里原来是代码写错了eval写成了evel了)
这个改完了~
还有就是str3 = (zjObj.value)*1 + (azjObj.value)*1;
这个不行。得出的结果是NaN。not a nomber!!!不是数值。
说到低这个问题还是没解决了。~~
还有大哥说我的风格奇怪~
我的风格是……………………我根本不怎么会这个东西。所以我都是乱改的。所以我的风格就是一个字。。。。乱~

革命尚未成功,我看我还得努力。大哥们还得帮我解决我这个问题啊~~

[ 本帖最后由 kingsoft01 于 2008-5-11 13:08 编辑 ]

TOP

是有够特别的了。eval不常用。Ajax+Json里常用吧

TOP

“谢谢我自己。。。。”
蘇格拉底的油燈,柏拉圖的夢,我在亞裏士多德的羊皮卷裏打呼呼...

TOP

发新话题