Internet Explorer просит загрузить POST-запрос для загрузки

Я унаследовал сценарий PHP, который выполняет много логики с помощью встроенного в POST. Как только мы делаем запрос в IE9, он запрашивает у пользователя загрузку типа «true» с размером, очень похожим на запрос POST. Ни в коем случае мы не видим поведения, когда данные не сохраняются на сервере — ожидаемое поведение после отправки — простой запрос на загрузку.

Фактический вызов POST запускается с использованием jQuery.ajax:

$.ajax({
type: "POST",
url: "profile/edit-profile-info.php",
data:"mail="+mail,
success: function() {
console.log('Success!!!');
location.reload('true'); //Reloads the page with the form
}
}).done(function() {
console.log('Done!!!');
location.reload('true'); //Reloads the page with the form
});

И команда reload наследуется в объектном пространстве браузера, насколько я могу судить.

Фактический скрипт PHP, который обрабатывает эти данные, по существу сохраняет данные в ORM (не в коде) и возвращает запрос в виде текста / обычного

header('Content-Type: text/plain; charset=utf-8');
$data->record->mail = $_POST['mail'];

Мы попытались отправить другой тип контента в качестве запроса, и он не работает в Chrome, Firefox и др.

Глядя на унаследованный HTML, поля заполняются в иерархии без тега формы, что дает мне паузу в отношении причины. Я не совсем уверен, что это виновник. К сожалению, я не могу с готовностью выдать демо для обзора. Но если кто-то видел это или имеет какие-либо идеи по этому поводу, понимание будет оценено.

0

Решение

Удалите запятые вокруг true в location.reload (‘true’); он требует логического значения, и вы вводите его в виде строки, которая не соответствует ожиданиям IE.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]