使用jqModal网站的代码部分FUN!覆盖:
http://dev.iceburg.net/jquery/jqModal/#examples
(我编辑的代码,使用一个回调函数)jQuery jqModal确认对话框回调问题
function confirm(msg,callback) {
$('#confirm')
.jqmShow()
.find('p.jqmConfirmMsg')
.html(msg)
.end()
.find(':submit:visible')
.click(function(){
if(this.value == 'yes')
(typeof callback == 'string') ?
window.location.href = callback :
callback();
$('#confirm').jqmHide();
});
}
$().ready(function() {
$('#confirm').jqm({overlay: 88, modal: true, trigger: false});
// trigger a confirm whenever links of class alert are pressed.
$('a.confirm').click(function() {
confirm('About to visit: '+this.href+' !',callbackfunction);
return false;
});
});
function callbackfunction()
{
console.log("callback triggered");
}
的问题:当每次确认函数被调用时,回调也日趋触发,所以当我点击第二次,处理程序执行2次,第3次,3次等等。
我看到:),但我真的不知道如何改变代码,使其工作就像它应该。我有多个确认对话框,应该调用不同的回调函数 – Sobek 2010-07-09 12:35:04
您只需设置一次,例如在文档准备就绪后,只需更改消息文本并在打电话时显示,例如确认方法。或者,设置一个布尔值来表明你已经添加了处理程序,并且不要再添加它。 – sje397 2010-07-09 12:49:53
是的,的确如此,但是当我在文档就绪级别上定义click处理程序时,将执行的callbackfunction()将不会变化,除非我定义了一个变量,该变量在调用锚点的Click处理程序时发生更改。 – Sobek 2010-07-09 13:01:31