JScript code<script type="text/javascript">
function onClientClick()
{
var inputs = document.getElementById("<%=GridView1.ClientID%>").getElementsByTagName("input");
for(var i=0; i <inputs.length; i++)
{
if(inputs[i].type=="text")
{
inputs[i].value //这是TextBox的Text值,根据你的情况进行验证
//.
}
}
}
</script>
GridView在客户端是一个table,他的ID就上Gridview的ID。只要用js循环这个table就可以了,下面我给个例子: function onClientClick()
{
var inputs = document.getElementById("<%=GridView1.ClientID%>").getElementsByTagName("input");
for(var i=0; i <inputs.length; i++)
{
if(inputs[i].type=="text")
{
inputs[i].value //这是TextBox的Text值,根据你的情况进行验证
//.
}
}
}
</script>
function setClf()
{
var table=document.getElementById("Table1");
var tr=table.getElementsByTagName("tr");
var sum=0;
var pattem=/^\d+(\.\d+)?$/;
for( i=1;i <tr.length;i++)
{
var sum1;
var a,b,c;
if(pattem.test(tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value))
a=parseFloat( tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value );
else
a=0;
if(pattem.test(tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value))
b=parseFloat( tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value );
else
b=0;
if(pattem.test(tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value))
c=parseFloat( tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value );
else
c=0;
sum1=a*( b + c*b );//计算方法改变
tr[i].getElementsByTagName("td")[8].getElementsByTagName("input")[0].value = parseFloat(sum1).toFixed(2);
sum=sum+sum1;
}
document.getElementById("clf1").value=parseFloat(sum).toFixed(2);
}
遍历了Table1,其中使用了 正则来判断数据 {
var table=document.getElementById("Table1");
var tr=table.getElementsByTagName("tr");
var sum=0;
var pattem=/^\d+(\.\d+)?$/;
for( i=1;i <tr.length;i++)
{
var sum1;
var a,b,c;
if(pattem.test(tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value))
a=parseFloat( tr[i].getElementsByTagName("td")[4].getElementsByTagName("input")[0].value );
else
a=0;
if(pattem.test(tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value))
b=parseFloat( tr[i].getElementsByTagName("td")[5].getElementsByTagName("input")[0].value );
else
b=0;
if(pattem.test(tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value))
c=parseFloat( tr[i].getElementsByTagName("td")[7].getElementsByTagName("input")[0].value );
else
c=0;
sum1=a*( b + c*b );//计算方法改变
tr[i].getElementsByTagName("td")[8].getElementsByTagName("input")[0].value = parseFloat(sum1).toFixed(2);
sum=sum+sum1;
}
document.getElementById("clf1").value=parseFloat(sum).toFixed(2);
}
上面是将 gridview第4,5,7列里textbox的值按一定规则计算得到的值赋给第8列的textbox(列从0开始)