用jquery發送ajax請求,在Google瀏覽器下正常,但是在IE下卻失效,一開始的代碼是這樣的:
代碼如下 |
複製代碼 |
<script type="text/javascript"> $(function(){ $("#fen_a a").live("click",function(event){ url=$(this).attr("href"); alert(url); $.ajax({ url:url, type:"post", dataType:"html", timeout:1000, error:function(){ alert("ajax擷取失敗!"); }, success:function(result){ $("#dapei_fenye").empty().append($(result).find("#dapei_fenye").html()); }, }); event.preventDefault(); }); }) </script>
|
這段代碼經測在Google瀏覽器下正常,在IE下無效,如果把ajax那段去掉,IE可以看到alert的內容,ajax加上去後,連alert的內容都不顯示。所以確定是ajax這裡有問題。
後來幾經調試,終於調好了。調整了一下error,和success這兩個回呼函數的位置,把最後一個回呼函數最後的“,”逗號去掉,就ok了。
看來jquery在IE下的文法很嚴格。最後的代碼如下:
代碼如下 |
複製代碼 |
<script type="text/javascript"> $(function(){ $("#fen_a a").live("click",function(event){ url=$(this).attr("href"); $.ajax({ url:url, type:"post", dataType:"html", timeout:1000, success:function(result){ $("#dapei_fenye").empty().append($(result).find("#dapei_fenye").html()); }, error:function(){ alert("Ajax擷取資料失敗!"); } }); event.preventDefault(); }); }) </script>
|
IE真實讓人頭疼啊!!