<script language="javascript">function res(obj){
obj.result.value=eval(obj.afield.value)+eval(obj.bfield.value)+eval(obj.cfield.value)+eval(obj.dfield.value)+eval(obj.efield.value)
}</script><form action="cgi.exe" method="get" name = "calForm"><input type="text" name="afield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="bfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="cfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="dfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="efield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="result" DISABLED size="8"></form>是这样吗?在前面的文本框里面输数字,在最后一个文本框显示相加结果。
obj.result.value=eval(obj.afield.value)+eval(obj.bfield.value)+eval(obj.cfield.value)+eval(obj.dfield.value)+eval(obj.efield.value)
}</script><form action="cgi.exe" method="get" name = "calForm"><input type="text" name="afield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="bfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="cfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="dfield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="efield" value="0" size="8" onchange="res(calForm)">
<input type="text" name="result" DISABLED size="8"></form>是这样吗?在前面的文本框里面输数字,在最后一个文本框显示相加结果。
假设<form name="frm">var el = document.frm.elements["result[1]"];
el.value = "***"用document.formName.elements[inputName]
<input type="text" name="afield[2]" value="0" size="8" onchange="res(this.form)">
<input type="text" name="afield[3]" value="0" size="8" onchange="res(this.form)">
...
阿信的写法是正确的, 用document.formName.elements[inputName]; 这种方式调用到这个控件就不会有岐义错误了
var sRes;
var sEle1;
var sEle2;
var sVal;
sRes = "document.calForm.elements['cresult[" + index + "]'].value";
sEle1 = "document.calForm.elements['afield[" + index + "]'].value";
sEle2 = "document.calForm.elements['bfield[" + index + "]'].value";
sVal = eval(sEle1 + "+" + sEle2);
eval(sRes + "=" + sVal);
}</script><form action="cgi.exe" method="get" name = "calForm"><input type="text" name="afield[1]" value="0" size="8" onchange="res(this.calForm, 1)">
<input type="text" name="bfield[1]" value="0" size="8" onchange="res(this.calForm, 1)">
<input type="text" name="cresult[1]" DISABLED size="8">
<br>
<input type="text" name="afield[2]" value="0" size="8" onchange="res(this.calForm, 2)">
<input type="text" name="bfield[2]" value="0" size="8" onchange="res(this.calForm, 2)">
<input type="text" name="cresult[2]" DISABLED size="8">
</form>
<script language="javascript">
function calAdd(a1, a2){
return Number(a1) + Number(a2);
}function res(obj, index){
var sRes;
var sEle1;
var sEle2;
var sVal;
sRes = "document.calForm.elements['cresult[" + index + "]'].value";
sEle1 = "document.calForm.elements['afield[" + index + "]'].value";
sEle2 = "document.calForm.elements['bfield[" + index + "]'].value";
eval(sRes + "=calAdd(" + sEle1 + ", " + sEle2 + ")");
//eval(sRes + "=" + sVal);
}
</script><form action="cgi.exe" method="get" name = "calForm"><input type="text" name="afield[1]" value="0" size="8" onchange="res(this.calForm, 1)">
<input type="text" name="bfield[1]" value="0" size="8" onchange="res(this.calForm, 1)">
<input type="text" name="cresult[1]" DISABLED size="8">
<br>
<input type="text" name="afield[2]" value="0" size="8" onchange="res(this.calForm, 2)">
<input type="text" name="bfield[2]" value="0" size="8" onchange="res(this.calForm, 2)">
<input type="text" name="cresult[2]" DISABLED size="8">
</form>