欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決jQuery ajax請求在IE6中莫名中斷的問題

 更新時間:2016年06月20日 09:05:58   作者:雨夜帶刀  
本文主要介紹jQuery ajax請求在IE6中莫名中斷問題的解決方法,有需要的朋友可以參考一下。

場景還原:給a標簽綁定了一個click事件用來觸發(fā)ajax請求,在IE6中,請求時常會被中斷,在非IE6中都一切正常。

<a href="javascript:;" id="btn">click me</a>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
 var url = "http://api.flickr.com/services/"
 "feeds/photos_public.gne?tags=car&"
 "tagmode=any&format=json&jsoncallback=?";
 $( "#btn" ).click(function(){
  $.getJSON( url, function( data ){
   alert( data );
  });
 });
</script>

在IE6中使用Fiddler2監(jiān)視請求,經(jīng)常會出現(xiàn)”aborted”,折騰了許久,相當?shù)脑幃悺:髞韺標簽換成button,請求正常,最后經(jīng)提醒,可能是a標簽的默認事件中斷了請求。但是,在HTML代碼中,已經(jīng)將a標簽的href設(shè)置成了”javascript:;”,通常這樣是可以阻止默認事件了(頁面跳轉(zhuǎn))。a標簽的click事件會先執(zhí)行,然后才執(zhí)行href的跳轉(zhuǎn),如果href是一段javascript語句,這個時候就會執(zhí)行。IE6在執(zhí)行href的javascript語句時就中斷了click觸發(fā)的ajax請求。使用href=”javascript:;”是為了阻止默認事件,將阻止默認事件的動作移到click事件中就可以解決問題了,這樣就不會執(zhí)行href中的javascript語句了。

$( "#btn" ).click(function(e){
 $.getJSON( url, function( data ){
  alert( data );
 });
 e.preventDefault();
});

注:e.preventDefault(); 這一句的作用就是阻止js中的默認事件。

以上就是本文的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論