不执行跳转为Ajax动态标签链接分配的原因分析及解决方案
评价系统中添加新的功能调查问卷,我想用为别人做好事的问卷,也有一个好处是:人做专业,并美化界面非常人性化,但是它需要设置问卷每次你发布了一个网站后,每个客户端访问都是改变地址。每次客户点击调查表时,客户机就会跳转到相应的页面。
点击调查表进入调查表页面:
我使用标签访问管理员提交的调查表。
复制代码代码如下所示:
问卷调查
点击问卷和电话meizz的函数,它返回问卷的URL是通过Ajax调用访问。
复制代码代码如下所示:
功能meizz(e){
$ ajax({
/ /异步:虚假,Ajax / /同步设置
键入:获取
网址:, / / queryquestionnaire ashx处理。
成功返回数据,JSON数据分析将返回,在信息显示列表的过程中
成功:功能(strjson){
检查返回的背景数据
无功dataarray = eval(strjson);
e.href = dataarray { 0 }。问卷; / /访问。
},
返回数据失败,错误弹出显示
错误:函数(XMLHttpRequest,textstatus,errorthrown){
警报(XMLHttpRequest。responseText);
}
});
}
现象是e.href可以运行在美元。功能的AJAX,但动态的返回地址在Ajax不能运行。在被压抑,它终于找到了答案:因为AJAX默认的调用是异步的,所以AJAX回调函数是通过href回调函数处理,并链接了直接。我是在这个时候空值。
解决方案:将Ajax调用方法更改为同步,声明Ajax调用是同步的:
复制代码代码如下所示:
$ ajax({
异步: / /假,AJAX同步设置
}
这样,href的执行必须等待Ajax调用的函数被触发并获得期望的结果。