我正在使用Java语言中的for循环遍历一个表。
其中一些单元格具有批准/忽略下拉菜单,但有些则没有 (有些是空白的,很遗憾,这是该规范的一部分)。 当它变为空值时,代码将掉落。
如何让它跳过/忽略任何空值?
function submitform() {
document.getElementById("nodata").className = "center form-message form-
message-warning hidden";
document.getElementById("novehicle").className = "center form-
message form-message-warning hidden";
selectTable = document.getElementById('despatchTable');
rowLength = selectTable.rows.length;
var vehicleError = 'N';
var despatchData = "";
for (i = 1; i < rowLength; i++){ //
if (null) {
i++;
}
var selectCells = selectTable.rows.item(i).cells;
var loadin = selectCells.item(0).innerHTML;
var fieldout = " ";
var loadVal = fillfield(loadin, 7, fieldout);
var clientin = selectCells.item(3).innerHTML;
fieldout = " ";
var clientVal = fillfield(clientin, 8, fieldout);
var approvein = selectCells.item(6).children.approval.value;
var approveVal = fillfield(approvein, 7, fieldout);
var vehicleIn = selectCells.item(1).innerHTML;
var vehicleLength = vehicleIn.trim().length;
}
}
我收到的错误消息是
当item(6)等于null时,无法读取属性'children'为null'
答案 0 :(得分:0)
好像发生在这条线上
var approvein = selectCells.item(6).children.approval.value;
因此,在执行此操作之前,您可以测试if (selectCells.item(6)) {...
您还有if (null) { i++; }
。它永远不会执行。
也许这是您要放支票的地方。
而且,与其增加i
,不如增加continue
。