全部找出来就可以了.或者根据客户端的control个数遍历. 类似于 var sumVal =0 var text = document.getElementById("controlname"); if (text != null) { sumVal = sumVal + Number(text.Value); }
var o = document.getElementsByTagName("INPUT"); var sum = 0; for(var i=0; i<o.length; i++){ if(o.type == "text"){ sum += parseFloat(o.value); } } alert(sum);大概是这样吧,根据楼主的具体情况而定,比如特定的控件ID等。
ID应该是不确定的吧 除了动态创建的textbox还有其他的呢 楼上的方法应该也不行吧
var o = document.getElementsByTagName("INPUT"); var sum = 0; for(var i=0; i <o.length; i++){ if(o.type == "text"){ sum += parseFloat(o.value); } } alert(sum);
控件ID总有些规律吧。 比如你的控件ID是TextBox1_1、TextBox1_2、…、TextBox1_n 那么客户端取的时候 var o = document.getElementsByTagName("INPUT"); var sum = 0; for(var i=0; i <o.length; i++){ if(/^TextBox1_\d*$/ig.test(o.id)){ sum += parseFloat(o.value); } } alert(sum);
TMD的上面错了。 var o = document.getElementsByTagName("INPUT"); var sum = 0; for(var i=0; i <o.length; i++){ if(/^TextBox1_\d*$/ig.test(o[0].id)){ sum += parseFloat(o[0].value); } } alert(sum);
只要你服务器端知道动态生成的textbox的个数,而且这些动态生成的textbox都有一定的规律性比如textbox0,textbox1等,你用<input type=hidden id="hCount"/>隐藏域保存textbox的个数, 则客户端可以这样 var count = parseInt(document.getElementById("hCount").value); for(int i=0;i<count;i++) { var textbox = document.getElementById("textbox" + i).value; }
类似于
var sumVal =0
var text = document.getElementById("controlname");
if (text != null)
{
sumVal = sumVal + Number(text.Value);
}
var sum = 0;
for(var i=0; i<o.length; i++){
if(o.type == "text"){
sum += parseFloat(o.value);
}
}
alert(sum);大概是这样吧,根据楼主的具体情况而定,比如特定的控件ID等。
var sum = 0;
for(var i=0; i <o.length; i++){
if(o.type == "text"){
sum += parseFloat(o.value);
}
}
alert(sum);
所以最好使用ID来标志,比如说,TextBox1,TextBox2,TextBox3 ...
否则的化,没有办法控制究竟哪些INPUT是TextBox解析出来的,
哪些不是.
=====
这个还要通过id来判断,具体看你的程序,客户端没有办法判断那个是动态创建的TextBox
比如你的控件ID是TextBox1_1、TextBox1_2、…、TextBox1_n
那么客户端取的时候
var o = document.getElementsByTagName("INPUT");
var sum = 0;
for(var i=0; i <o.length; i++){
if(/^TextBox1_\d*$/ig.test(o.id)){
sum += parseFloat(o.value);
}
}
alert(sum);
var o = document.getElementsByTagName("INPUT");
var sum = 0;
for(var i=0; i <o.length; i++){
if(/^TextBox1_\d*$/ig.test(o[0].id)){
sum += parseFloat(o[0].value);
}
}
alert(sum);
则客户端可以这样
var count = parseInt(document.getElementById("hCount").value);
for(int i=0;i<count;i++)
{
var textbox = document.getElementById("textbox" + i).value;
}
2.循环获取值
for(int i=1;i <=count;i++)
{
var textbox = document.getElementById("textbox" + i).value;
}