jquery对话框弹出窗口问题

时间:2011-03-21 17:55:25

标签: javascript jquery jquery-ui

我在我的脚本文件夹

中的PopUpWindow.js文件中添加了此代码
var window = "<div id='window' style='display: none;width:190px'></div>";


PopUpWindow = function (titles, message, redirectURL) {
    document.getElementById('window').innerHTML = message;
    $("#window").dialog({
        resizable: true,
        height: 180,
        title: titles,
        width: 500,
        modal: false,
        open: function () {
            $('.ui-widget-overlay').show();
            $('.ui-dialog-titlebar-close.ui-corner-all').hide();
        },
        buttons: {
            "OK": function () {
                $(this).dialog("close");
                if (redirectURL) {
                    window.location = redirectURL;
                }
            }
        }
    });
};

我在Site.Master页面中包含了这个js文件。

但是我仍然无法在任何aspx页面中访问此PopUpWindow函数?

是我在做什么?

我无法执行此PopUpWindow以显示弹出消息

PopUpWindow("Field to Show","Message","URL redirect");

由于

2 个答案:

答案 0 :(得分:1)

虽然“window”保存在变量中,但在尝试通过id获取之前,它不会被添加到页面中。

    var window = "<div id='window' style='display: none;width:190px'></div>";


    PopUpWindow = function (titles, message, redirectURL) {

    // Add to body (change the selector to whatever's relevant)
    $('body').append( window );
    // Set the innerHTML the jQuery way :)
    $('#window').html( message );
    $("#window").dialog({
        resizable: true,
        height: 180,
        title: titles,
        width: 500,
        modal: false,
        open: function () {
            $('.ui-widget-overlay').show();
            $('.ui-dialog-titlebar-close.ui-corner-all').hide();
        },
        buttons: {
            "OK": function () {
                $(this).dialog("close");
                if (redirectURL) {
                    window.location = redirectURL;
                }
            }
        }
    });
};

我只在JSFiddle上测试了这个,并且CSS不在那里,所以我不能保证没有更多的错误,但如果你在`#window上将显示改为“阻止”,这确实会出现一个对话框“

答案 1 :(得分:0)

看起来你要么加载这个文件错误(坏网址)或其他正在发生的事情。你能检查一下,告诉我们吗?它甚至可能是语法错误。

编辑: 您是否忘记将窗口附加到DOM?

var window2 = "<div id='window' style='display: none;width:190px'></div>";

$(window2).appendTo("body")