Содержание Javascript, предназначенное для всей страницы, отображается только в div, почему? - PullRequest
0 голосов
/ 11 ноября 2019

Я обрабатываю форму с помощью javascript, используя простой пример и сообщение aysnc. Однако по какой-то причине ответ AJAX POST, будь то перенаправление или полный html-ответ, отображается только в div, где находится форма. Я не могу это объяснить. Почему-то это происходит, но по ошибке.

Я пытался:

location.href = ("/relative/path");
document.location = ("/relative/path");
window.location.replace("/relative/path");
document.documentElement.innerHTML = xhr.responseText;
document.getElementsByTagName("html")[0].innerHTML = xhr.responseText;
document.write(xhr.responseText);
$("html").replaceWith(xhr.responseText );

Некоторые из них загружают весь контент на страницу, но только после краткогопоказ содержимого в форме div (например, двойное перенаправление, один раз внутри div, а затем для страницы). Если я просто отображаю HTML на странице, он просто остается внутри div, и больше ничего не происходит. Чем это вызвано? Если вы думаете, что код поможет, я могу опубликовать некоторые, но вопрос, вероятно, уже достаточно длинный.

ОБНОВЛЕНИЕ:

Перед отправкой
Before После отправки
After

В этом примере вы можете видеть, что сервер dev возвращает ошибку из-за исправляемой ошибки. Однако вы можете видеть, что обычно это сообщение об ошибке занимает оба деления.

ОБНОВЛЕНИЕ 2:

JavaScript был взят из здесь , сединственной модификацией является ответ перенаправления / записи в completeHandler:

function completeHandler(event) {
    _("progressBar").value = 0; //will clear progress bar after successful upload

    // Insert document.write, location.href, location.replace, etc.
    document.write(xhr.responseText);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...