Как использовать функции MVC на странице, загруженной ajax? - PullRequest
0 голосов
/ 08 марта 2012

Мой контроллер выглядит примерно так:

jQuery.extend({
    Controller: function(model, view){

    //-----VIEW-----//
    var vlist = $.ViewListener({
        clickItem : function(Item){
            switch (Item) {
                case 'File':
                    //do something
                    break;
                default:
                    //do something else
            }
        }
    });
    view.addListener(vlist);

    //-----MODEL-----//
    var mlist = $.ModelListener({
        gotContent : function(Item) {
            switch (Item.type) {
                case 'Download':
                    //do someting else
                    break;
                default:
                    //do something else
            }
            //update view
        }
    });
    model.addListener(mlist);

    }
});

Как использовать функцию clickItem со страницы, которая не была создана MVC?

Я пробовал view.clickItem и многие другие способы, однако ничего не определено, потому что все это в частных функциях.

Я загружаю MVC так:

$(function(){
    var model = new $.Model();
    var view = new $.View($("#framework"));
    var controller = new $.Controller(model, view);
    view.init();
});

По сути, у меня есть ссылка, которую я хотел бы использовать так же, как и функция clickItem.

1 Ответ

0 голосов
/ 08 марта 2012

Был в состоянии обойти это с помощью метода .live () jQuery. При обратном вызове ajax success я запустил метод jQuery .live (), чтобы прикрепить событие onclick к элементу, который вызывает функцию clickItem ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...