Передайте функцию Javascript в плагин Jquery - PullRequest
0 голосов
/ 09 декабря 2011

Я хочу передать функцию в качестве параметра плагину.

Проблема: я создаю плагин jquery. Плагин jquery выполняет вызовы JSON-P.

Часть кода:

(function ($) {
$.fn.GetJsonResult = function (options) {

    var opts = $.extend({}, $.fn.GetJsonResult.defaults, options);

    var control = this;

    $.ajax({
        url: opts.url,
        dataType: 'jsonp',
        cache: false,
       error: function (XMLHttpRequest, textStatus, errorThrown) {
       alert("Error occured textStatus=" + textStatus + " errorThrown=" + errorThrown);
       },
        success: function (j) {

       }

    });

}

})(jQuery);

Могу ли я передать имя функции, которая будет выполняться в методе успеха, когда запрос JSOn будет выполнен.

1 Ответ

1 голос
/ 09 декабря 2011

Вы можете передать саму функцию:

$(x).GetJsonResult({
    success: function() { /* ... */ }
});

Или:

function pancakes() { /* ... */ }

$(x).GetJsonResult({
    success: pancakes
});

А потом:

$.fn.GetJsonResult = function (options) {
    // ...
    $.ajax({
        // ...
        success: function(j) {
            // Do whatever you need to do.
            if(options.success)
                options.success();
        }
    });
    // ...
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...