JQuery の (2.0.2) のonreadystatechange
(基礎となる) からのイベントを使用して同期 ajax リクエストを起動し、実行時間の長いリクエストに対してエンド ユーザーに正確なステータスを表示できるようにしたいと考えています。しかし、この機能は最新バージョンの JQuery から削除されたようで (こちらを参照)、非同期 Web 要求を使用するスピナーがユーザーにアクティビティを表す唯一のオプションになっています。XMLHttpRequest
$.ajax(...)
私は次のようなことをします (私はまだ JQuery を使用XMLHttpRequest
したくありませんが)、JQuery で readystate 変更関数にアクセスする方法はまだありますか? onreadystatechange
イベントを公開するプラグインはおそらくありますか?
function pad(width, string, padding) { // from stackoverflow.com/a/15660515/424963
return (width <= string.length) ? string : pad(width, string + padding, padding)
}
$(function(){
$("<div>Loading</div>").appendTo($("body"));
var anticache = "?anticache=" + new Date().getTime();
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState === 4){
$("div").html("Done");
}
else {
$("div").html("Loading" + pad(xhr.readyState, "", "."));
}
};
xhr.open("POST", "jsfiddle.net" + anticache, true );
xhr.send();
});