0

次のコードがあります。

// 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 が edit_modal.aspx への ajax 呼び出しの前に実行されることです。実際には、モーダル ボックスが閉じられた後に実行する必要があります。また、モーダルが閉じられた後に実行する必要がある関数に $(this).attr('id') を渡す必要があります。モーダルが閉じられた後、関数に変数を渡すことによって関数を呼び出す方法は?

よろしく、

ケム

4

1 に答える 1

1

問題はf、JSエンジンがonHideの値を設定したときに実行されることです。実際に必要なのは、onHideを、load_itを呼び出すインラインで定義された無名関数に設定することです。

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

使用していないので、実際には必要ありませんhashが、(jqModalのドキュメントによると)興味深いものがあるかもしれません。

于 2009-05-28T20:35:58.670 に答える