以下是我想要做的一个示例。
<html>
<head>
<script type="text/javascript" language="javascript">
function doOpen() {
if ($('#dialog-modal').dialog('widget') == '')
document.getElementById('#dialog-modal').style.display = 'block';
else
$('#dialog-modal').dialog('open');
}
function doClose() {
if ($('#dialog-modal').dialog('widget') == '')
document.getElementById('#dialog-modal').style.display = 'none';
else
$('#dialog-modal').dialog('close');
}
function doAttach() {
$('#dialog-modal').dialog({
width: 'auto',
height: 'auto',
title: 'Popup Dialog',
autoOpen: false,
resizable: false,
modal: true
});
document.getElementById('dialog-modal').style.display = 'block';
}
</script>
</head>
<body>
<input type="button" id="Show" value="Open" onclick="doOpen();" />
<input type="button" id="Attach" value="Attach" onclick="doAttach();" />
<div id="dialog-modal" style="display:none">
Show this in a model dialog window<br />
<input type="button" id="Close" value="Close" onclick="doClose()" />
</div>
</body>
</html>
如果在执行任何其他操作之前单击“附加”,则对话框显示正常。但是如果我先点击“打开”,那么我就会收到错误。我需要知道这一行应该是什么,以确定对话框模式是否已附加到对话框
if ($('#dialog-modal').dialog('widget') == '')
答案 0 :(得分:1)
告诉你要做什么有点难,但是你可以使用data()查看是否附加了对话框。
if ($('#dialog-modal').data('uiDialog')) {
alert('dialog attached');
}
答案 1 :(得分:1)
大多数插件在目标html元素中添加了一些类和数据。您需要找出他们添加的类和数据,而不是保持条件 喜欢
if($('selector').hasClass('classAdded')){
//do something
}
或者
if($('selector').data('dataKey')){
//do something
}
对于课程,您可以在firebug屏幕或其他屏幕上看到。 要获取他们分配的数据,请使用
alert(JSON.stringify($(selector).data()));