Tôi đang thực hiện cuộc gọi AJAX POST để nhận một số HTML. Tôi lấy HTML đó và tiêm nó vào DOM. Tất cả mọi thứ hoạt động tốt và dandy trong mọi trình duyệt ngoại trừ IE < = 8. Có vẻ như IE đang phân tích cú pháp HTML đến từ khi tôi đăng nhập vào console/cảnh báo, thẻ ở dạng thủ đô.IE <= 8 xóa <form> thẻ khi nhận được từ AJAX
Dòng nó loại bỏ:
<form class="uniForm" enctype="multipart/form-data" action="/profile/editprofile/" method="post">
Rất kỳ lạ vì thẻ cuối cùng là có nhưng thẻ bắt đầu thì không. Cuộc gọi là một jQuery POST chuẩn ($ .post()).
UPDATE:
Đã kết thúc từ bỏ và đưa nó vào một textarea nhúng và reinjecting vào DOM:
<!--[if lt IE 9]>
<textarea class="ieHackTextArea">
<!--[if lt IE 9]>
<![endif]-->
... ở một nơi khác ...
if ($.browser.msie && parseFloat($.browser.version) < 9) {
ui.panel.innerHTML = $(".ieHackTextArea").val(); // jQuery injection doesn't work
}
hạn chế quyền truy cập vào IE7 trình duyệt: p – genesis
Chỉ có IE này hoạt động trong IE 9! IE 7 không hoạt động. – brandon