求各位大神,为什么在调试加个断点时,运行的结果是正确的,然而在断点去掉时,运行的结果就是错误的。当加入断点时,会进入if{}模块,不加断点时,就不进入if{}模块,这是什么原因呢?
var currentStepId = ""; //ajax获取当前案件处理步骤详情 $.ajax({ type:"GET", url:ctx + "ajaxcase.do?method=getCaseInfo", data:{ "caseNum":$("#caseNum").val() }, success:function(returnedData){ if(returnedData != ""){ currentStepId = returnedData.currentStepId; } } }); //获取当前的流程步骤 var stepId = $("#stepId").val(); var greenSrc = $("#all_step div:first").find("img").attr("src"); var tt = currentStepId; if(currentStepId != ""){ //将当前的步骤div内的箭头图片改为灰色 $("#step_"+currentStepId).find("img").attr("src",greenSrc.replace("green", "grey")); //将当前步骤div后续的步骤div的背景全部改为灰色并把箭头图片也改为灰色 $("#step_"+currentStepId).nextAll("div").css("background-color", "#CDCECB"); $("#step_"+currentStepId).nextAll("div").find("img").attr("src",greenSrc.replace("green", "grey")); $("#step_"+currentStepId).nextAll("div").find("a").attr("href", "#"); }
ajax方法设置成同步的
没看代码,但是可以确定的是这是个同步的问题。
为什么不把下面的代码放到 success里处理呢?
[code="js"]
//获取当前的流程步骤
var stepId = $("#stepId").val();
var greenSrc = $("#all_step div:first").find("img").attr("src");
var tt = currentStepId;
if(currentStepId != ""){
//将当前的步骤div内的箭头图片改为灰色
$("#step_"+currentStepId).find("img").attr("src",greenSrc.replace("green", "grey"));
//将当前步骤div后续的步骤div的背景全部改为灰色并把箭头图片也改为灰色
$("#step_"+currentStepId).nextAll("div").css("background-color", "#CDCECB");
$("#step_"+currentStepId).nextAll("div").find("img").attr("src",greenSrc.replace("green", "grey"));
$("#step_"+currentStepId).nextAll("div").find("a").attr("href", "#");
}
[/code]