我将数据发布到我的网络服务器并返回成功或失败状态。我想在 ajax 发布后向用户显示确认或错误消息。它在 Chrome 和 IE 9 中按预期工作,但 IE 8 不会显示新附加div
的我的确认消息。
使用 IE 8 的 DOM 检查器,我发现 div 元素实际上被附加到 DOM,但只是没有显示。在我附加元素后,也许 IE 没有获得某种屏幕刷新事件?我在我的代码中的其他地方的 ajax 回调函数中附加 DOM 元素,使用$.getJSON()
- 似乎 IE 正在查看 POST 方法并决定不让我更新 DOM。
我的 ajax 代码如下所示:
$.post("adminpage.ashx?action=newAccount", newData, function (response) {
getAccount(newData.accountNum); // display the new account
if (response == "success") {
createAlert("Account was successfully updated.", "success").appendTo(".container");
} else if (response == "error") {
createAlert("There was an error updating the account.", "error").appendTo(".container");
}
});
createAlert()
返回带有我的确认或错误消息的 div。
提前致谢。
编辑:这是我的 createAlert 函数的代码:
function createAlert(message, type) {
var alert = $("<div>");
alert.addClass("alert alert-block");
if (typeof type != "undefined") {
alert.addClass("alert-" + type);
}
var dismissButton = $("<button>");
dismissButton.addClass("close").attr("data-dismiss", "alert").text("x");
dismissButton.appendTo(alert);
var alertText = $("<p>");
alertText.text(message);
alert.append(message);
return alert;
}
以及 IE 8 的调试器显示的 HTML:
<DIV class="alert alert-block alert-success">
<BUTTON class=close type=submit data-dismiss="alert">x</BUTTON>Account was successfully updated.
</DIV>