这是我的简单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>
答案 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();
}
});
}