汎用応答のグローバルajaxハンドラーを作成しようとしています。(例:ページの更新)
ハンドラーやハックはありますか?すでに解析されたjsonを取得するので、2回解析する必要はありませんか?
$(document).ajaxSuccess(function(e, xhr) {
// Validate and parse xhr.responseText TWICE!
});
さて、少し「ハッキー」な解決策を見つけました。おそらく他の人にも役立つでしょう:)
汎用応答のグローバルajaxハンドラーを作成しようとしています。(例:ページの更新)
ハンドラーやハックはありますか?すでに解析されたjsonを取得するので、2回解析する必要はありませんか?
$(document).ajaxSuccess(function(e, xhr) {
// Validate and parse xhr.responseText TWICE!
});
さて、少し「ハッキー」な解決策を見つけました。おそらく他の人にも役立つでしょう:)
解決策は、jqueryajaxjsonパーサーをオーバーライドすることです。
function parseJsonResponse(d) {
var json = jQuery.parseJSON(d); // Same as default
// Do anything with json object :)
return json;
}
// Override original parser, defaults to jQuery.parseJSON.
jQuery.ajaxSettings.converters['text json'] = parseJsonResponse;
parseJsonResponse
また、グローバル関数になりたくない場合は、このコードを自己実行型の無名関数に入れることができます