qq_37723453 2017-03-02 02:56 采纳率: 0%
浏览 1342

ajax 中 调用了 后台的 方法,为什么要js方法全部走完,才走进后台方法

function forDownLoad()
{

var row = grid.getCurrentLine();
var filepath = grid.getCellValue(row,3);
var primaryKey = parent.grid.getCheckLine();
var aLink = document.getElementsByTagName("A")[0];
var filePath = filepath;
var fileName = grid.getCellValue(grid.getCurrentLine(),2);
var sel=grid.getCheckLine();
if(sel==""){
alert("请选择一条记录!");
return;
}
var url="/client/certexamine".replace('certexamine','bpmcommon');
//用于判断文件是否被删除
$.ajax({
url:url+"/workFlowForm/loginFileExists.so",
data:"filePath="+filePath,
async:false,
success:function(msg){
if(msg=='true'){
}else{
//缓存证书图片到服务器端
document.forms[0].action = "/client/certexamine/certExamineForm/cachePic.so?certID="+primaryKey;
document.forms[0].submit();
}
}
});
var hrefCopy = aLink.href;
//实现将文件名换回原始文件名
aLink.href = aLink.href+filePath+"&fileName="+fileName;
aLink.click();
aLink.href = hrefCopy;

}

代码是这样的,要走完aLink.click();后台才会进
document.forms[0].action = "/client/certexamine/certExamineForm/cachePic.so?certID="+primaryKey;
这个方法。
怎么实现后台进方法在aLink.click();之前呢。

  • 写回答

2条回答 默认 最新

  • Young-Eric 2017-03-02 03:17
    关注

    ajax不是异步的么,你用同步的方式去调用后台方法,这样应该就会顺序执行了吧思密达

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?