为什么我代码加到form里不能用

hrxnoise 2011-09-23 04:05:28
初学者,老师们帮我看看


<form method="POST" action="?hrx=nn">


<table id='sum_test'>
<tr >
<td align="center" bgcolor="#77ADFF"><input type=text value="28" name="T1" size="20"></td>
<td align="center" bgcolor="#77ADFF"><input type="checkbox" name="hotel" value="0" onclick='sum()'></td>

</tr>

<tr >
<td >
<input type=text value="28" name="T1" size="20"></td>
<td align="center"><input type="checkbox" name="hotel" value="0" onclick='sum()'></td>

</tr>
</table>


<input type="text" id="sum" name="textfield">
<script type='text/javascript'>
function sum(){
var forScan=document.getElementById('sum_test');
var tbody;
var sumall=0;
for(var i=0;i<forScan.childNodes.length;i++){
if(forScan.childNodes[i].tagName=='TBODY')
tbody=forScan.childNodes[i];
}
if(tbody==undefined) return;
else{
for(var i=0;i<tbody.childNodes.length;i++){
var val=tbody.childNodes[i].childNodes[0].childNodes[0].value;
var val_check=tbody.childNodes[i].childNodes[1].childNodes[0].checked;
if(val_check)
sumall+=parseInt(val);
}
document.getElementById('sum').value=sumall

}
}
</script>

</form>

...全文
102 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
OPPPPOP 2011-09-23
  • 打赏
  • 举报
回复

<form method="POST" action="?hrx=nn">


<table id='sum_test'>
<tr >
<td align="center" bgcolor="#77ADFF"><input type=text value="28" name="T1" size="20"></td>
<td align="center" bgcolor="#77ADFF"><input type="checkbox" name="hotel" value="0" onclick='sum();'></td>

</tr>

<tr >
<td >
<input type=text value="28" name="T1" size="20"></td>
<td align="center"><input type="checkbox" name="hotel" value="0" onclick='sum();'></td>

</tr>
</table>


<input type="text" id="sumObj" name="textfield">

</form>
</body>
<script type='text/javascript'>
function sum(){
var fc=function(el){
var cn=null;
for(var i=0,cns=el.childNodes,il=cns.length;i<il;i++){
if(cns[i].nodeType==1){
cn=cns[i];
break;
}
}
return cn;
};
var tab=document.getElementById('sum_test');
var s=0;
for(var i=0,rows=tab.rows,il=rows.length;i<il;i++){
if(!fc(rows[i].cells[1]).checked){
continue;
}
s+=fc(rows[i].cells[0]).value*1;
}
document.getElementById('sumObj').value=s;
}
</script>

帮你改了下 那个id="sum"的input 在chrome下竟然认为是个Object 并且覆盖了sum函数 超大的bug啊
所以我改为sumObj了
hrxnoise 2011-09-23
  • 打赏
  • 举报
回复
取消action不行
liuyuhua0066 2011-09-23
  • 打赏
  • 举报
回复
取消form的action?
hrxnoise 2011-09-23
  • 打赏
  • 举报
回复
搞晕了我只要取消<form method="POST" action="?hrx=nn">

就正常了不懂是哪问题大虾们帮帮我
淡定的峰哥 2011-09-23
  • 打赏
  • 举报
回复
tbody.childNodes[i].childNodes[1].childNodes[0].checked......;
弄得这么复杂
取文本框的值用 document.getElementById('testid').value;
如果是表格中td的值用 document.getElementById('tdid').innerText;

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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