JQModal, JQuery вопрос - PullRequest
       10

JQModal, JQuery вопрос

0 голосов
/ 29 мая 2009

У меня есть следующий код;

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

Дело в том, что когда я щелкаю по элементу с классом «edit», функция load_it запускается даже до вызова ajax в edit_modal.aspx. Я действительно требую его запуска после закрытия модального окна. Кроме того, мне нужно передать $ (this) .attr ('id') в функцию, которая должна быть запущена после закрытия модала. Я делаю это неправильно (я знаю это), но может кто-то показать мне правильный способ вызова функции, также передав ей переменную, после закрытия модального окна?

С уважением,

Кемь

1 Ответ

1 голос
/ 29 мая 2009

Ваша проблема в том, что f выполняется, когда механизм JS устанавливает значение onHide. На самом деле вы хотите, чтобы в onHide была установлена ​​анонимная функция, определенная inline, которая вызывает load_it:

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

вам на самом деле не нужен hash, поскольку вы его не используете, но (согласно документации jqModal) там могут быть некоторые интересные вещи для вас.

...