Jquery对话框在IE中完美地工作但在FF和Chrome中没有

时间:2012-06-27 10:11:29

标签: javascript jquery

这是我的简单jquery,它在IE中正常工作,但在FF和Chrome中无法正常工作

function publishRedirects() {
    if (window.confirm("Are you sure want to publish the redirects?")) {
        callJquery();
    }
}

function callJquery() {
    $('#btnPublish').click(function () {
        $("#dialog").attr('title', 'Publishing').text('Publishing Please Wait').append("<img src='../images/loading11.gif' id='myNewImage' />").dialog({
            draggable: false,
            resizable: false,
            modal: true,
            closeOnEscape: false,
            open: function (event, ui) {
                $("a.ui-dialog-titlebar-close").remove();
            }
        });
    });
}

这是我的HTML:

<body> <div id="dialog"></div> <input name="btnPublish" class="button1" type="button" id="btnPublish" value="Publish" onClick="publishRedirects()"> <script type="text/javascript" src="../script/jquery.js"></script> <script type="text/javascript" src="../script/jquery-ui.js"></script> </body>

1 个答案:

答案 0 :(得分:1)

我认为这是因为您正在为btnPublish分配点击事件而不是执行该功能。如果在单击按钮时调用了publishRedirects(),并且您希望在用户确认对话框后执行callJquery中的代码,则它应如下所示:(注意已删除的附加到click事件)

    function callJquery(){
         var obj= $("#dialog");
         obj.attr('title','Publishing');
         obj.text('Publishing Please Wait');
         obj.append("<img src='../images/loading11.gif' id='myNewImage' />");
         obj.dialog({ 
                draggable: false,
                resizable: false,
                modal: true,
                closeOnEscape: false,
                open: function(event, ui) {
                       $("a.ui-dialog-titlebar-close").remove();
                  }
                 });

    }