2009-05-28 37 views
0

我有以下代碼;jqModal,jquery問題

// 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); }; 

的事情是,當過我點擊了一類「編輯」功能load_it甚至AJAX調用edit_modal.aspx之前運行的元素..其實我需要它的模式對話框後運行關閉了。另外,我需要將$(this).attr('id')傳遞給模式關閉後需要運行的函數..我做錯了(我知道它),但有人可以告訴我正確的調用函數的方式,在模式關閉之後還通過一個變量傳遞給它的方法?

問候,

KEM

回答

1

您的問題是,當JS引擎設置onHide的價值f執行。你真正需要的是有onHide設置一個匿名函數,聯定義,調用load_it:

onHide:function(hash){load_it($(this).attr('id'));} 

你實際上並不需要hash那裏,因爲你不使用它,但(按jqModal的文檔)可能會有一些有趣的東西給你。