我有一个带有复选框的GridView和一个附加到网格行数据绑定事件中的每个复选框的"onClick“函数"VerifyChecked”。
在我的Javascript中,函数体如下所示
function VerifyChecked() {
var gv = document.getElementById('ctl00_ContentPlaceHolder1_grdProductNotes');
var btn = document.getElementById('ctl00_ContentPlaceHolder1_btnAdd');
var btn2 = document.getElementById('ctl00_ContentPlaceHolder1_btnAdd1');
btn.disabled = true;
btn2.disabled = true;
var strEnabled;
var strPk = '';
var strSeq = '';
var count = 0;
for (i = 1; i < gv.rows.length; i++) {
var row = gv.rows[i];
var ckbox = row.cells[0].getElementsByTagName('input')
if (ckbox[0].checked) {
btn.disabled = false;
btn2.disabled = false;
count = count + 1;
var pk = row.cells[0].all[2].innerText; 当我检查控制台时,应用程序不会在Internet版本10中抛出错误。但是,在版本11和chrome中。我得到了下面的错误。
"UnCaught TypeError :无法读取未定义的“的属性2”
导致错误的行是var pk = row.cells[0].all[2].innerText;编辑1:
我发现"Object.all“属性现在已经过时了,因此我得到了错误。但是现在我一个都无法访问元素的所有collection.Any解决方案来实现这一点?
发布于 2016-07-29 12:08:21
您可以使用children或childNodes集合:
var pk = row.cells[0].children[2].innerText;
var pk = row.cells[0].childNodes[n].innerText;请注意,childNodes还包括文本节点。因此,元素的索引可能与过时的all属性不同。
https://stackoverflow.com/questions/38654098
复制相似问题