具体代码如下:
我想通过下面的代码来获取我页面中gridview中的label控件中的值,最后采用循环的方式来获取,但最后在红色字体的地方怎么也取不到我要的控件。
iRow始终都显示的是iRow,没有具体的值。
我通过断点调试过,能够看到iRow当时是被赋值过的,但是 strLabelVOC 结果等于null。
//在txtHijyu焦点失去的时候计算VOC% VOC总量
function txtHijyu_LoseFocus() {
var obj = document.getElementById("txtHijyu"); //记录比重文本框
var objVOCPer = document.getElementById("txtVOCPer"); //记录VOC%
var objVOCTotal = document.getElementById("txtVOCTotal"); //记录VOCTotal
var gv = document.getElementById("<%=GVMSDS.ClientID%>");
var iVOCPer = 0; //记录VOC%
var iVOCTotal = 0; //记录VOCTotal
var strLabelVOC; //记录GVMSDS中绑定的labelVOC
var strLabelMID; //记录GVMSDS中绑定的labelMID值
var iRow="";//记录GVMSDS的行数
if (obj.value != "") {
for (var i = 2; i < gv.rows.length + 2; i++) {
iRow = "GVMSDS_ctl" + i + "_lblVOC";
if (i < 10) {
iRow ="GVMSDS_ctl" + "0" + i + "_lblVOC" ;
} strLabelVOC = document.getElementById(iRow);
strLabelMID = document.getElementById(iRow); if (strLabelVOC.value == "○") {
iVOCPer = iVOCPer + parseFloat(strLabelMID.value); } }
objVOCPer.value = iVOCPer;
iVOCTotal = iVOCPer * 0.01 * parseFloat(obj.value) * 1000;
objVOCTotal.value = iVOCTotal;
}
}
我想通过下面的代码来获取我页面中gridview中的label控件中的值,最后采用循环的方式来获取,但最后在红色字体的地方怎么也取不到我要的控件。
iRow始终都显示的是iRow,没有具体的值。
我通过断点调试过,能够看到iRow当时是被赋值过的,但是 strLabelVOC 结果等于null。
//在txtHijyu焦点失去的时候计算VOC% VOC总量
function txtHijyu_LoseFocus() {
var obj = document.getElementById("txtHijyu"); //记录比重文本框
var objVOCPer = document.getElementById("txtVOCPer"); //记录VOC%
var objVOCTotal = document.getElementById("txtVOCTotal"); //记录VOCTotal
var gv = document.getElementById("<%=GVMSDS.ClientID%>");
var iVOCPer = 0; //记录VOC%
var iVOCTotal = 0; //记录VOCTotal
var strLabelVOC; //记录GVMSDS中绑定的labelVOC
var strLabelMID; //记录GVMSDS中绑定的labelMID值
var iRow="";//记录GVMSDS的行数
if (obj.value != "") {
for (var i = 2; i < gv.rows.length + 2; i++) {
iRow = "GVMSDS_ctl" + i + "_lblVOC";
if (i < 10) {
iRow ="GVMSDS_ctl" + "0" + i + "_lblVOC" ;
} strLabelVOC = document.getElementById(iRow);
strLabelMID = document.getElementById(iRow); if (strLabelVOC.value == "○") {
iVOCPer = iVOCPer + parseFloat(strLabelMID.value); } }
objVOCPer.value = iVOCPer;
iVOCTotal = iVOCPer * 0.01 * parseFloat(obj.value) * 1000;
objVOCTotal.value = iVOCTotal;
}
}
strLabelMID = document.getElementById(iRow);参数是字符串类型的,要加双引号
strLabelVOC = document.getElementById('<%=iRow%>');
不过在一楼的帮助下。搞定了。最终代码附上:
//在txtHijyu焦点失去的时候计算VOC% VOC总量
function txtHijyu_LoseFocus() {
var obj = document.getElementById("txtHijyu"); //记录比重文本框
var objVOCPer = document.getElementById("txtVOCPer"); //记录VOC%
var objVOCTotal = document.getElementById("txtVOCTotal"); //记录VOCTotal
var gv = document.getElementById("<%=GVMSDS.ClientID%>");
var iVOCPer = 0; //记录VOC%
var iVOCTotal = 0; //记录VOCTotal
var strLabelVOC; //记录GVMSDS中绑定的labelVOC
var strLabelMID; //记录GVMSDS中绑定的labelMID值
var iRow="";//记录GVMSDS的行数
if (obj.value != "") {
for (var i = 2; i < gv.rows.length +1; i++) {
iRow = i ;
if (i < 10) {
iRow = "0" + i ;
}
// strLabelVOC = document.getElementById("GVMSDS_ctl" + iRow + "_lblVOC").value;
// strLabelMID = document.getElementById("GVMSDS_ctl" + iRow + "_lblWTMID").value;
strLabelVOC = $("#" + "GVMSDS_ctl" + iRow + "_lblVOC").html();
strLabelMID = $("#" + "GVMSDS_ctl" + iRow + "_lblWTMID").html();
if (strLabelVOC == "○") {
iVOCPer = iVOCPer + parseFloat(strLabelMID); } }
objVOCPer.value = iVOCPer;
iVOCTotal = iVOCPer * 0.01 * parseFloat(obj.value) * 1000;
objVOCTotal.value = iVOCTotal;
}
}