我想在Simplemodal打开窗口时执行一个函数,并使用回调函数填充'onShow'字段。在下面的例子中,我只是用警告说明填写它,即每次打开simplemodal窗口时都应该触发警报
但是,它似乎只执行一次。如果打开模态,然后关闭,然后重新打开,重新打开时,后续打开时不会调用此方法。
请在文档中剪切并粘贴下面的html以查看此行为(关闭模态窗口,然后单击打开模态窗口按钮)
我错过了什么,每次打开窗口时都会允许onShow执行?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" href="ttp://jqueryui.com/latest/themes/base/ui.all.css" rel="stylesheet" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js" type="text/javascript"></script>
<script src='http://www.ericmmartin.com/simplemodal/js/jquery.simplemodal.js' type='text/javascript'></script>
<script src='http://www.ericmmartin.com/simplemodal/js/basic.js' type='text/javascript'></script>
<link type='text/css' href='ttp://www.ericmmartin.com/simplemodal/css/basic.css' rel='stylesheet' media='screen' />
<script type="text/javascript">
$().ready(function() {
$('#basic-modal input.basic, #basic-modal a.basic').click(function (e) {
e.preventDefault();
$('#basic-modal-content').modal();
});
$('#basic-modal-content').modal({onShow:
function(dialog) {
alert('hello');
}});
});
</script>
</head>
<body>
<div id='basic-modal-content'>
<input type="text" id="amount" style="border:0; color:#ffffff; font-weight:bold; width: 40px; background: #aaaaaa;" />
<div id="slider-vertical" style="height:200px;"></div>
</div>
<div id='basic-modal'>
<h2>Basic Modal Dialog</h2>
<form action='download/' method='post'>
<input type='button' name='basic' value='Show modal' class='basic demo'/>
</form>
</div>
</body>
答案 0 :(得分:2)
您需要删除从我的网站加载的basic.js。这与您的代码相冲突。
答案 1 :(得分:0)
我想你每次调用modal时都想使用onShow
选项。
$('#basic-modal input.basic, #basic-modal a.basic').click(function (e) {
e.preventDefault();
$('#basic-modal-content').modal({
onShow: function(dialog) {
alert('hello');
}
});
});