jQueryのajax通信がIE8で動かない

Read More

jQueryのajax通信を実装した際、IE8で正しく動かない現象があったのでその解決方法をメモ。

$.ajax({
  type: "POST",
  cache: false,
  data: "name=xirasaya&id=1",
  url: "index.php",
  success: function(msg){
    alert(msg);
  },
  error:function(msg){
    alert(msg);
  }
});


オプションのcacheにfalseを指定することでIE6、IE7、IE8で動作することを確認した。


あとオプションの繋ぎには","(カンマ)を利用するが、最後のオプション指定をカンマで終わるとIEでエラーになった。
これは気をつけたい。


あとページ自体がhttpsだと、この時ajaxオプションのurlをhttpからの絶対パスで記述しているとFirefoxではうまく通信しなかった。
オプションのurlを相対パス、あるいはhttpsからの記述だと正しく動作した。

$.ajax関数のオプションについてはこちらが詳しかった↓
http://semooh.jp/jquery/api/ajax/jQuery.ajax/options/