我正在尝试创建一个弹出式div,它在我的应用程序完成任务时出现。当ajax任务完成时,我想删除弹出窗口。我一直在审查http://jqueryui.com/demos/dialog/#modal,并试图实现一个类似的解决方案。但是我无法弹出我的div。下面是我创建div的代码:
<div id="progress-indicator">
<img src="<?php echo base_url();?>assets/img/wip.gif" /> Please Wait...
</div>然后在页面的后面,我有一些javascript来隐藏div,直到有人单击一个按钮:
$(document).ready(function(){
$('#progress-indicator').hide();
});
$('#saveData').live('click', function() {
//$('#progress-indicator').show();
$( "#progress-indicator" ).dialog({
height: 140,
modal: true
});
});不幸的是,单击保存按钮时不会弹出窗口。如果你能告诉我哪里出错了,我将不胜感激。
谢谢!
编辑:
我知道按钮单击事件被触发,因为在尝试创建弹出div之前,我有一行代码使div在现有页面中可见。这是可行的。因此,例如,下面的代码可以工作:
$(document).ready(function(){
$('#progress-indicator').hide();
});
$('#save').live('click', function() {
$('#progress-indicator').show();
});这段代码运行得很好,除了我想要一个以页面为中心的弹出窗口。
编辑2:顺便说一句,伙计们,我也检查了firefox中的web开发人员控制台,没有生成错误消息。如果这有帮助的话...此外,我还包括jquery和jquery-ui:
<script src="assets/js/jquery-1.8.1.min.js" charset="utf-8"></script>
<script src="assets/js/jquery-ui-1.8.23.custom.min.js"></script>发布于 2012-09-11 01:59:25
您关闭文档准备得太快了。使用live或on的点击绑定应该在文档内准备就绪。现在,您的文档ready在第一次隐藏后立即结束。这样,当click事件被绑定时,对话框函数很有可能还没有加载。
发布于 2012-09-11 02:21:58
这将弹出对话框
<div id="progress-indicator" style="display:none;">
<img src="<?php echo base_url();?>assets/img/wip.gif" /> Please Wait...
</div>
(function ($) {
$('#saveData').click(function() {
$( "#progress-indicator" ).dialog({
height: 140,
modal: true
});
});
})(jQuery);发布于 2012-09-11 03:11:19
您需要在click()事件之前定义对话框。在单击中,您需要调用open()。
$(document).ready(function(){
$( "#progress-indicator" ).dialog({
height: 140,
modal: true
});
$('#progress-indicator').hide();
$('#save').click( function() {
$('#progress-indicator').dialog('open');
});
});https://stackoverflow.com/questions/12356997
复制相似问题