我正在尝试打开一个验证权限对话框,显示用户是否拥有权限,并显示进度图标。
在IE和Google Chrome中,问题是对话框一打开就不会出现,但只有在验证了所有权限后才会出现。 在火狐中这是正常的。
以下是关于它如何显示的对话框的img。
这是代码
var StartVerifyingPermission = function (serverId) {
$("#dialog-message").removeAttr("title").attr("title", "Verifying Permissions");
$("#ui-dialog-title-dialog-message").text("Verifying Permissions");
var html = ' <table>\
<tr>\
<td>Skype for Business Admin</td>\
<td id="isSkypeForBusinessAdmin">Update Status with ajax</td>\
</tr>\
<tr>\
<td>Compliance Manager</td>\
<td id="isComplianceManager">Update Status with ajax</td>\
</tr>\
</table>';
var msg = "<div style='background:white'>" + html + "</div>";
$("#dialog-message").html(msg);
$("#dialog-message").dialog({
open: function (event, ui) {
$(this).css({ 'max-height': 70, 'overflow-y': 'auto' });
},
modal: true
});
var isSkypeAdmin = CheckPermission("isSkypeForBusinessAdmin", serverId);
if (isSkypeAdmin) {
var isComplianceManager = CheckPermission("isComplianceManager", serverId);
}
if (isComplianceManager) {
}
};
var CheckPermission = function (permissionName, serverId) {
var tag = '#' + permissionName;
var progressImage = '<img src="../Images/SplashPageLoader.gif" height="30px"/>';
var sucessImage = '<img src="../Images/mark_tick.ico" height="30px"/>';
var failedImage = '<img src="../Images/mark_cross.jpg" height="30px"/>';
$(tag).html(progressImage);
var hasPermission = false;
$.ajax({
type: 'POST',
url: "MyHandlerfile.ashx?cmd=" + permissionName,
data: {
serverId: serverId
},
async: false,
success: function (result) {
if (result.success) {
$(tag).html(sucessImage);
hasPermission = true;
} else {
$(tag).html(failedImage);
}
},
error: function () {
$(tag).html(failedImage);
}
});
return hasPermission;
};
var RegisterTestPermissionsEvent = function () {
$(".testPermission").live("click", function() {
var serverId = parseInt($(this).attr('id'));
StartVerifyingPermission(serverId);
});
};