出于某种原因,我将此代码显示为弹出窗口。
<div id="myDialog" title="myTitle">
<div class="table_cell">
<div class="message"></div>
</div>
<div class="table_cell" onclick="doMyThing(<?php echo $id; ?>)">
<span style="cursor:pointer">Accept</span>
</div>
</div>
当我使用Javascript触发某个事件时,将执行下一个代码:
$(document).ready(function() {
$('#myDialog').dialog();
$('.message').html("Some text");
});
这很好用。虽然,我需要在单击我的span字段后隐藏/关闭对话框。我尝试过像$('#myDialog').dialog('close');
这样的东西,但它不起作用。此外,尝试在第一次点击然后display: block
时进入'myDialog'display: none
,但无论如何,对话框仍保留在屏幕上。
这个'myDialog'实际上是从css接收一些样式,这就是为什么我正在编写这样的假对话。有什么建议吗?
答案 0 :(得分:1)
您可以使用提供的按钮而不是自己的
jQuery的:
$(document).ready(function() {
$( "#mydialog" ).dialog({
modal: true,
buttons: {
"Accept": function() {
doMyThing(<?= $id ?>);
$( this ).dialog( "close" );
}
}
})
});
HTML:
<div id="myDialog" title="myTitle">
<div class="table_cell">
<div class="message"></div>
</div>
</div>
您可以在此处查看相应的文档:http://jqueryui.com/dialog/#modal-confirmation
答案 1 :(得分:1)
<div id="dialog-confirm" title="Empty the recycle bin?">
<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>These items will be permanently deleted and cannot be recovered. Are you sure?</p>
</div>
<script>
$(function() {
$( "#dialog-confirm" ).dialog({
resizable: false,
height:140,
modal: true,
buttons: {
"Delete all items": function() {
$( this ).dialog( "close" );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
});
</script>
答案 2 :(得分:0)
.dialog('close')
应该可以正常工作。正确引用范围。
<div id="myDialog" title="myTitle">
<div class="table_cell">
<div class="message"></div>
</div>
<div class="table_cell" onclick="doMyThing(<?php echo $id; ?>)">
<span id='accept' style="cursor:pointer">Accept</span>
</div>
</div>
$(document).ready(function() {
$('#myDialog').dialog();
$('.message').html("Some text");
$('#accept').on('click', function(){
$('#myDialog').dialog('close');
})
});
<强> FIDDLE HERE 强>
答案 3 :(得分:0)
好吧,我终于使用了jQuery按钮并改变了它的外观。我试图在那里使用css类,但它没有成功。
$(document).ready(function() {
$('.message').html("Some text");
$( '#myDialog' ).dialog({
modal: true,
buttons: {
'accept': {
style:'background:#D1040E; color: #DADADA',
text: 'Accept',
click: function() {
doMyThing(<?php echo $id; ?>);
$( this ).dialog( 'close' );
}
},
'cancel': {
style:'background:#D1040E; color: #DADADA',
text: 'Cancel',
click: function() {
$( this ).dialog( 'close' );
}
}
}
});
});