国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

ajax動態為a標簽href賦值不執行跳轉的原因分析及解決

2024-09-01 08:31:27
字體:
來源:轉載
供稿:網友
ajax 動態為a標簽的href屬性賦值,總是不執行跳轉的原因想必大家有遇到過吧,下面與大家分享下具體的解決方法,希望對你有所幫助

由于一中考評系統要加入一個新的功能“調查問卷”,我想沿用別人做好的調查問卷,用別人的有一個好處就是:人家做的專業,界面美化等非常人性化,但是它需要你每次設置完調查問卷后發布一下網址,客戶端訪問的每次都是變動的地址。

客戶端每次點擊“調查問卷”,就會跳轉到相應頁面:

ajax動態為a標簽href賦值不執行跳轉的原因分析及解決


點擊“調查問卷”即進入調查問卷頁面:

ajax動態為a標簽href賦值不執行跳轉的原因分析及解決


我使用a 標簽,每次訪問管理員提交的“調查問卷”

復制代碼 代碼如下:


<li><a href="">調查問卷</a></li>


點擊“調查問卷”,調用meizz函數,該函數通過ajax調用返回要訪問的“調查問卷”網址:

復制代碼 代碼如下:


<script type="text/javascript" language="javascript">
function meizz(e) {
$.ajax({
//async:false, //設置ajax的同步
type: "get", //get方式
url: "../handler/QueryQuestionnaire.ashx",
//返回數據成功,將返回的json數據解析,顯示在課程信息列表中
success: function (strJson) {
//檢查后臺返回的數據
var dataArray = eval(strJson);
e.href = dataArray[0].Questionnaire;//要訪問的網址
},
//返回數據失敗,彈出錯誤顯示
error: function (XmlHttpRequest, textStatus, errorThrown) {
alert(XmlHttpRequest.responseText);
}
});
}
</script>


現象是 e.href如果放在函數的$.ajax之上可以運行,但是放到ajax里面綁定動態返回的地址,就不能運行了。經過了郁悶,最終找到了答案:因為ajax默認調用是異步的,所以不等ajax調用處理回調函數為href賦值,就直接發起了href,在這里這時候href是空值。

解決方法:將ajax調用方法改為同步,聲明ajax調用方式為同步:

復制代碼 代碼如下:


$.ajax({
async:false, //設置ajax的同步
}


這樣href的執行就必須等待function中ajax調用完成后才會觸發,就得到了想要的結果。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌拉特后旗| 万荣县| 临洮县| 特克斯县| 都昌县| 上虞市| 庆元县| 景德镇市| 东丰县| 通州市| 雷波县| 天镇县| 霍邱县| 商水县| 左贡县| 肃北| 比如县| 深水埗区| 伊金霍洛旗| 简阳市| 简阳市| 永定县| 宁强县| 绩溪县| 保亭| 民权县| 遵化市| 清新县| 清水河县| 监利县| 敖汉旗| 武冈市| 隆回县| 高阳县| 叶城县| 西藏| 监利县| 九江县| 黔南| 高州市| 昆山市|