jQuery UI对话框按钮不可见

时间:2012-10-09 08:35:21

标签: jquery-ui jquery-ui-dialog

拥有以下代码:

$('#feedback_dialog_container').dialog({
        modal: true,
        closeOnEscape: false,
        title: "Title",
        height: 650,
        width: 600,
        buttons: [{
            text: "Send",
            click: function() {
                // ...
            }
        }]
});

按钮在对话框中不可见。任何提示或提示,我会错过什么吗?

PS:我也试过@palmplam的这个例子,也没有工作:

$('#feedback_dialog_container').dialog({
    modal: true,
    closeOnEscape: false,
    title: "Title",
    height: 650,
    width: 600,
    buttons: {"Send" : function() {
            // ...
        }
    }
});

4 个答案:

答案 0 :(得分:2)

尝试添加如下按钮:

buttons : {text:function},{secondtext:secondfunction},...

使用您的代码,就像这样:

$('#feedback_dialog_container').dialog({
    modal: true,
    closeOnEscape: false,
    title: "Title",
    height: 650,
    width: 600,
    buttons: {"Send" : function() {
            // ...
        }
    }
});

也许您可以在对话框初始化后添加按钮,如下所示:

$('#feedback_dialog_container').dialog('option', 
                                       'buttons', 
                                       {"Send" : function() {
                                           // ...
                                       }});

答案 1 :(得分:0)

已经有几个月了,你现在可能已经过去了,但FWIW:

我不是jQuery UI内部的专家,但是我一直在努力解决按钮显示时间超过我不承认的问题,这是我从1.8.23升级到1.10.0后出现的问题(然后回滚到1.9) .2,但问题仍然存在)。我相信我现在有一个线索。

您应该只初始化一次对话框一次。如果要重新使用,则应该(1)初始化autoOpen设置为false;当你想(重新)打开时,如果需要重置选项并调用“打开”;或者(2)在你的对话框上调用“destroy”,这样你就可以在需要的时候重新初始化它,而不会遇到麻烦。

所以,看起来我一直在做“错误”,但是直到版本> 23年1月8日

希望这有帮助。

答案 2 :(得分:0)

你错过了这个'jquery-1.8.2.min.js'。只需将其添加到您的代码中即可。

答案 3 :(得分:0)

$('#feedback_dialog_container').dialog({    
    height:auto,                                
    width:auto,
    modal:true,
    buttons:{"Send":send}//function call send
});
function send()  {
    //function code here
}