Ich bin immer in der Lage, IE11 abstürzen, wenn ich große/komplexe Json-Objekt mit Angulars $ http.post Methode post.
Ich habe Setup einen Winkel Beispiel, das in IE11 ausgeführt werden können, um das Verhalten zu sehen, die ich erlebe: http://plnkr.co/edit/yYaDy8d00VGV6WcjaUu3?p=preview
Dies ist der Code, der einen Absturz verursacht:
$http.post($scope.saveDocumentUrl, { "document": doc, "submit": submit, "trash": trash }).success(function (data) {
if (!data.Success) {
bootbox.alert(data.Message);
} else {
if (trash) {
$scope.periodReviewDocuments.pop(doc);
hideModalWindow(); //we call this in the event that the method was called from the document and not from the list.
}
if(submit){
$scope.periodReviewDocuments.pop(doc);
resetForm();
bootbox.alert("Your document has been submitted");
hideModalWindow();
}
}
$scope.isBusy = false;
}).error(function (data, status) {
$scope.isBusy = false;
bootbox.alert("The server encountered an error and could not save your document. If this problem persists please contact the administrators");
});
Dies ist jquery Arbeitscode:
$.ajax({
url: $scope.saveDocumentUrl,
data: JSON.stringify({ "document": doc, "submit": submit, "trash": trash }),
contentType: "application/json; charset=utf-8",
dataType: "json",
type: "POST"
}).done(function (data) {
if (!data.Success) {
bootbox.alert(data.Message);
} else {
if (trash) {
$scope.periodReviewDocuments.pop(doc);
hideModalWindow(); //we call this in the event that the method was called from the document and not from the list.
}
if (submit) {
$scope.periodReviewDocuments.pop(doc);
resetForm();
bootbox.alert("Your document has been submitted");
hideModalWindow();
}
}
$scope.isBusy = false;
}).fail(function (data, status) {
$scope.isBusy = false;
bootbox.alert("The server encountered an error and could not save your document. If this problem persists please contact the administrators");
})
Dies ist, was ich weiß, so weit:
- Dieses Problem tritt nur in IE11 - Windows 8.1/IE 11 (11.0.9600.17498) auf. Aktualisieren Sie die Versionen 11.0.15 (KB3008923).
- Der Browser stürzt ab, nachdem die Anfrage gesendet wurde.
- Ich habe die serverseitige eingehende Anfrage inspiziert und die Nutzlast wurde perfekt serialisiert/deserialisiert.
- Ich habe die Funktion $ http.post mit jquery $ .ajax ersetzt und es löste das Problem, aber das ist keine Lösung, da ich Winkel verwenden.
- Ich habe 3 Tage in dieser Frage verloren
Ich arbeite am IE-Team und bin in der Lage, das Problem mit Ihrer Demo zu wiederholen. Ich werde dies sofort dem Rest des Teams zur Überprüfung zukommen lassen und alle notwendigen Rückmeldungen weiterleiten. Danke für das Teilen. – Sampson
Wie viele Artikel hat Ihre Antwort? Kannst du mit Paging und Lazy loading die Aufzeichnungen durchkommen? –
@ JonathanSampson vielen Dank - lassen Sie mich wissen, wenn Sie weitere Details benötigen. – Greg