在线等!~
为什么我做的if判断的时候 ,第一次满足条件不进入执行,非要第二次满足时才执行呀??
//功能:处理每一个sheet
function uf_processOneSheet(p_app,p_sheet,p_index,p_group)
{
var ls_objRows = p_sheet.getRows();
uf_GetAllgroups(p_group);
var ls_objectDefs = new Array();
for(var c = 0 ; c < l_gps.length ; c ++)
{
var ss = l_gps[c].ObjDefListFilter(Constants.OT_RISK);
ls_objectDefs = ls_objectDefs.concat(ss);
}
var p_objectDefs = new Array();
for(var e = 0 ; e < ls_objRows.length ; e++ )
{
var num1 = 0 ;
var ls_objID = p_sheet.cell(e,2).getStringCellValue();
if(ls_objID != "")
{
for(var d = 0 ; d < ls_objectDefs.length ; d ++)
{
var ls_objectDefValue = ls_objectDefs[d].Attribute(Constants.AT_NAME,gn_loc).getValue();
var ls_objectDefDesc = ls_objectDefs[d].Attribute(Constants.AT_DESC,gn_loc).getValue() ;
if(ls_objectDefValue.equals(ls_objID))
{
p_objectDefs[p_objectDefs.length] = ls_objectDefs[d] ;
var lo_objDefValue = ls_objectDefs[d].Attribute(Constants.AT_NAME,gn_loc).getValue()
var lo_objDef = uf_getObjDefbyAttr(lo_objDefValue);
var lo_controlObjDef = uf_objFindModels(ls_objectDefs[d]);
if (lo_objDef != null)
{
//写入到lo_objDef对象特性中
uf_writeObjAttr(lo_objDef,p_sheet,e,lo_controlObjDef);
}
else
{
//没有找到相应的岗位对象,将提示信息写入到日志文件中
var ls_info = "没有找到相应ID的岗位:" + ls_objID;
gs_InfoList[gs_InfoList.length] = ls_info;
}
num1++ ;
}
if(ls_objectDefDesc.equals(ls_objID))
{
p_objectDefs[p_objectDefs.length] = ls_objectDefs[d] ;
var lo_objDefValue = ls_objectDefs[d].Attribute(Constants.AT_NAME,gn_loc).getValue()
var lo_objDef = uf_getObjDefbyAttr(lo_objDefValue);
var lo_controlObjDef = uf_objFindModels(ls_objectDefs[d]);
if (lo_objDef != null)
{
//写入到lo_objDef对象特性中
uf_writeObjAttr(lo_objDef,p_sheet,e,lo_controlObjDef);
}
else
{
//没有找到相应的岗位对象,将提示信息写入到日志文件中
var ls_info = "没有找到相应ID的岗位:" + ls_objID;
gs_InfoList[gs_InfoList.length] = ls_info;
}
num1++ ;
}
}
}
if(num1 = 0 )
{
gs_InfoList[gs_InfoList.length] = "在当前目录下找不到" +ls_objID;
//标识符没有维护,将提示信息写入到日志文件中
var ls_info = "没有在Excel文件中维护ID:" + p_app.getSheetName(p_index);
gs_InfoList[gs_InfoList.length] = ls_info;
}
}
}
就是比较ls_objectDefDesc.equals(ls_objID)) 和ls_objectDefValue.equals(ls_objID)) 第一次满足都为false 第二次才为true 不是我不贴全部代码是 只是我做的这个东西你们很少碰到 谢谢 耐心!!