我已经构建了一个网络应用程序。它在每个浏览器(Chrom、firefix、IE 7、8、9、10)上都能正常工作,但不仅仅在 11 上。
这是 html :
<div class="menu_nav">
<ul>
<li><a href="Upload.aspx">Upload</a></li>
<li class="active"><a id="btnSignIn" runat="server" rel="#div_Overlay" href="#">Sign in</a></li>
</ul>
</div>
这里是覆盖 div 代码:
$("#btnSignIn").overlay({
// // some mask tweaks suitable for modal dialogs
// mask: {
// color: '#ebecff',
// loadSpeed: 200,
// opacity: 0.9
// },
// //effect: 'myEffect',
// closeOnClick: false,
//});
这是我的 ajax 请求:
$("#btnLogin").live('click', function () {
if ($("#txtUserId").val() == "") {
alert("User Id Required");
}
else if ($("#txtPassword").val() == "") {
alert("Password Required");
}
else {
$.ajax({
url: "MainPage.aspx/CheckLogin",
data: "{'UserId':'" + $("#txtUserId").val().trim() + "','Password':'" + $("#txtPassword").val().trim() + "'}",
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
data = JSON && JSON.parse(data.d) || $.parseJSON(data.d);
if (data.Table[0].IsAllowed == "1") {
$("#btnSignIn").hide(function () {
var lblUserName = "<label class='lblWelcome'>Welcome, " + data.Table[0].UserFirstName + "<a id='btnlogout' href='#'>logout</label>";
$("#btnSignIn").parent().append(lblUserName);
$("#btnSignIn").overlay().close();
});
var v = window.location.search.replace("&msg=%27not%20logged%20in%27", "");
window.location.search = v;
}
else {
if (data.Table[0].IsVerified == "NotVerified") {
$("#txtPassword").val("");
$("#tr_Verify").show();
}
else {
$("#txtUserId").val("");
$("#txtPassword").val("");
alert("User Id Or Password Incorrect");
}
}
},
error: function (err) {
alert("Some error occured.Please contact to your administrator." + err);
}
});
}
return false;
});
当我点击登录按钮时,它只是转到回调错误。在所有浏览器中一切都工作正常。 这是网址:
http://61.5.156.98/UPortal/MainPage.aspx
我也尝试过这个:
error:function(xhr,err,exception){
alert(xhr); //shows [object][object]
alert(err); //shows error
alert(exception); //shows Internal server error
});
请帮帮我。用户ID:03211234567 密码:1234567 如果有人有 IE 11 那么她/他可以看到问题 提前致谢。
最佳答案
在你的ajax调用中添加cache: false,如下所示:
$.ajax({
url: "MainPage.aspx/CheckLogin",
data: "{'UserId':'" + $("#txtUserId").val().trim() + "','Password':'" + $("#txtPassword").val().trim() + "'}",
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
cache: false,
success: function (data) {...
关于jquery - Ajax 调用仅在 IE 11 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22808100/