jquery对话框(“打开”)内容未显示

时间:2012-09-13 23:03:41

标签: jquery

使用jquery对话暂时,但现在体验一种奇怪的行为。

通话:

$('#dialog-form').dialog({
    autoOpen: false,
    width: '700px',
    modal: true,
    hide: 'slide'
});

$('#dialog-form').dialog('option', 'buttons', {
'add' : {
    text: labelAdd,
    click: function() {
        doadd = true;
        if (typeof checkRow !== "undefined") { doadd = checkRow() };
        if (doadd) { exec(); }
    }}, 
'Cancelar': function() {$(this).dialog('close'); }
});
$("#dialog-form").dialog("open");

function exec() {
$('#dialog-form').dialog('close');
/* execute some remote code using ajax call*/
if (error) {
    $('#dialog-form').dialog('open');
    return false
}
return true;
}

对话框显示不正确。它显示“ui-widget-overlay”,但不显示对话框内容。

在我称之为函数的两次树时,它发生在我身上。

我可以看到其中的display属性设置为none。

生成的HTML代码:

div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-draggable ui-resizable" style="display: none; z-index: 1002; outline: 0px none; position: absolute; height: auto; width: 700px; top: 0px; left: 320.5px;" tabindex="-1" role="dialog" aria-labelledby="ui-dialog-title-dialog-form">

我使用firebug手动将显示设置为阻止,并且它可以正常工作。

顺便说一句,如果我脉冲“esc”,我可以看到隐藏对话框的动画。

我可以从js设置div内容的显示吗?或者我应该以不同方式打开/关闭对话框?

感谢您的帮助。

安东尼奥

1 个答案:

答案 0 :(得分:0)

为什么不添加

$("#dialog-form").dialog("open").show()到它..

我有类似的问题,这对我有用..