我正在使用JQuery UI Dialog。在这种形式中,我验证了一些东西。我称之为函数;
MessageBox('this is message', 'Error', OpenDialog());
在Chrome,Firefox,IE8,IE9中;它工作正常,但在IE7中,只有对话框的标题显示如下。当我点击“Okey”按钮时,它只显示标题 怎么解决这个问题?
MessageBox功能
function MessageBox(text, title,Func) {
var dv = document.createElement('div');
$(function () {
dv.id = 'Dialog';
dv.innerHTML = '<table style="font-family:Calibri;"><tr><td>' + text + '</td></tr></table>';
document.forms[0].appendChild(dv);
var dlg = $('#Dialog').dialog({
autoOpen: false,
width: 400,
title: title,
modal: true,
resizable: false,
buttons: [
{
text: "Okey",
width: 80,
click: function () {
DialogClose_('Dialog');
}
}],
open: function () {
$('.ui-dialog-buttonpane').find('button:contains("Okey")').addClass('ButtonDefault');
},
close: Func,
beforeClose: function () {
var dv2 = document.getElementById("Dialog");
dv2.parentNode.removeChild(dv2);
}
});
dlg.parent().appendTo(jQuery('form:first'));
$('#Dialog').dialog("option", "minWidth", 400);
$('#Dialog').dialog('option', 'position', 'center');
$('#Dialog').dialog('open');
});
return;
}
像这样的OpenDialog函数;
function OpenDialog() {
$(document).ready(function () {
$("#dialog").dialog("open");
});
}
答案 0 :(得分:1)
浏览IE7中的对话框高度似乎存在很多问题。
你可以尝试指定一个高度,但这会夺走你得到的漂亮的自动高度功能。
或者你可以在你将“dlg”变量设置为IE7之后设置浏览器的高度:
if ($.browser.msie && parseInt($.browser.version, 10) == 7) {
$('#Dialog').dialog("option", "height", 100);
}
您可以将“100”替换为您的想法。如果对话框中有容器元素,则可以始终使用它来设置高度,例如:
$("#container").height();
StackOverflow还有更多建议。
希望有所帮助。