| function main(spreadsheetReport) {var writeBack = spreadsheetReport.spreadsheetReportWriteBack;
 writeBack.removeListener(writeBack.elem_btnSave, "click", writeBack.doSaveClick, writeBack);
 writeBack.addListener(writeBack.elem_btnSave, "click",
 function(e) {
 // 定义字段及其对应的单元格位置
 var fields = [
 { position: "A3", name: "项目名称" },
 { position: "B3", name: "项目一级类别" },
 { position: "C3", name: "项目二级类别" },
 { position: "D3", name: "业主单位" },
 { position: "E3", name: "预计合同额(万元)" },
 { position: "F3", name: "目前进展" },
 { position: "G3", name: "预计签约日期" }
 ];
 
 var hasEmptyField = false; // 标记是否找到空字段
 var firstEmptyFieldName = ""; // 存储第一个空字段的名称
 
             // 循环校验每个字段for (var i = 0; i < fields.length; i++) {
 var cellList = spreadsheetReport.getExpandedPositions(fields.position);
 for (var j = 0; j < cellList.length; j++) {
 var cell = spreadsheetReport.getCell(cellList[j]);
 if (!cell.innerText) {
 if (!hasEmptyField) { // 只提示第一个找到的空字段
 hasEmptyField = true;
 firstEmptyFieldName = fields.name;
 alert(firstEmptyFieldName + " 不能为空!");
 }
 return; // 找到空字段后,立即停止执行
 }
 }
 }
 
 if (!hasEmptyField) {
 this.doSaveClick(e); // 所有字段都不为空时,执行保存操作
 }
 },
 writeBack);
 }
 
 这个代码应该怎么修改?
 |