読者です 読者をやめる 読者になる 読者になる

jQuery.ajaxでのjsonpについての備忘録

jQuery.ajax()でdataTypeを"jsonp"にしたときは、asyncオプションでfalseにしても同期動作はサポートしてないとのこと。
jQueryのマニュアルに記載してあった。

async
Default: true

By default, all requests are sent asynchronously (i.e. this is set to true by default). If you need synchronous requests, set this option to false. Cross-domain requests and dataType: "jsonp" requests do not support synchronous operation. Note that synchronous requests may temporarily lock the browser, disabling any actions while the request is active. As of jQuery 1.8, the use of async: false with jqXHR ($.Deferred) is deprecated; you must use the complete/success/error callbacks.

ちなみに、IEajaxを使用する場合、url:に同一ドメイン以外のものを指定する場合はjsonpで呼び出す必要がある。