Эта функция - мой обработчик ошибок ASP.NET MVC Ajax. Я хочу получить ответ HTML и добавить его в div, но только то, что находится внутри тела. Если я встраиваю прямой ответ, он в итоге объединяет теги html и body ответа страницы с ошибкой с текущей страницей, что приводит к неправильному размеру текста. Как я могу просто получить содержимое тела? Я пытался $('body', resp).html()
, но это ничего не дает мне.
function crayzeAjaxError(request) {
var resp = request.response;
if ($('#crayze-ajax-error-dialog').size() == 0) {
$('body').append('<div id="crayze-ajax-error-dialog" title="AJAX error" style="display:none;">' +
'<p>Sorry, the request failed with status code ' + request.status + '</p>' +
'<button id="crayze-ajax-error-dialog-show-details">Show details</button>' +
'<object id="crayze-ajax-error-dialog-response"></object>' +
'</div>');
}
$('#crayze-ajax-error-dialog-response').hide();
$('#crayze-ajax-error-dialog').dialog({ width: 600, height: 400, modal: true });
$('#crayze-ajax-error-dialog-show-details').click(function () {
$('#crayze-ajax-error-dialog-response').html($('body', resp).html());
$('#crayze-ajax-error-dialog-response').show();
});
}