我有以下代码;
// open the modal when an element with a class 'edit' is clicked
$('.edit').live('click', function() {`
$('#mdl_edit').jqm({onHide: f($(this).attr('id')), ajax: 'ajax/edit_modal.aspx?lid=' + $(this).attr('id'), ajaxText: '<img src="img/ajax-loader.gif"' });
$('#mdl_edit').jqmShow();
return false;
});
var f = function load_it(lID) { load_single_record(lID); };
问题是,每当我单击具有类的元素“编辑”时,甚至在ajax调用edit_modal.aspx之前,函数load_it就会运行。我实际上要求它在模式框关闭后运行。此外,我还需要将$(.attr).attr(‘id’)传递给需要在关闭模式后运行的函数。我做错了(我知道这一点),但有人能告诉我调用函数的正确方式吗?在模式关闭后,也可以传递一个变量给它。
致以敬意,
kem
发布于 2009-05-28 20:35:59
您的问题是,当JS引擎设置onHide的值时,会执行f
。您实际想要的是将onHide设置为一个内联定义的调用load_it的匿名函数:
onHide:function(hash){load_it($(this).attr('id'));}
您实际上并不需要hash
,因为您并不使用它,但是(根据jqModal的文档)可能会有一些有趣的东西供您使用。
https://stackoverflow.com/questions/922968
复制相似问题