Esempio n. 1
0
                function(e) {
                    // e.preventDefault();
                    // return;
                    var url = $(this).attr('href').substring(1);
                    var controller = require('er/controller');

                    this.loadingBookViewAction = 
                        controller.renderChildAction(url, 'book-info-panel');
                    this.loadingBookViewAction.done(showBookInfo);
                    return false; // 这里阻止了 链接的默认跳转行为。只是打开了一个子anction
                }
Esempio n. 2
0
                paint: function (panel, url, actionOptions) {
                    disposeAction(panel);

                    var controller = require('er/controller');
                    panel.action = controller.renderChildAction(
                        url, 
                        panel.main.id, 
                        actionOptions
                    );
                    panel.action.then(
                        lib.curry(attachAction, panel),
                        lib.curry(notifyActionLoadFailed, panel)
                    );
                }
Esempio n. 3
0
        addOneForm: function (config) {
            // 限制表单个数
            if (this.formCount + 1 > this.maxFormCount) {
                dialog.alert({
                    'title' : '系统提示',
                    'content' : '最多只能创建' + this.maxFormCount + '个资质!'
                });
                return;
            }

            // 分配一个id创建一个新的actionpanel,把子actionpanel塞到表单容器里边
            var view = this;
            var options = config.options;
            var formContainer = document.getElementById('formContainer');
            var id = 'form' + this.formIdIterator++;
            this.formCount++;
            // 根据配置指定id,主题资质会传一个区别于行业资质的id进来
            if (config.id) {
                id = config.id;
            }
            else if (options && options.defaultFormData) {
                id = options.defaultFormData.id;
            }
            var panel = new ActionPanel({
                id: id
            });
            panel.appendTo(formContainer);
            // 收集起来呗,这里放到下边的回调里边做也可以,其实这里只有actionPanel
            // action在下边的回调之后才加到panel里边
            view.childActions[id] = panel;

            // 在新创建出来的actionpanel里边渲染子action
            Controller.renderChildAction(config.url, 'ctrl-default-' + id, options)
                .then(function (action) {
                    // 绑一下删除的事件
                    if (config.hasDeleteEvent) {
                        action.on('delete', function () {
                            view.fire('delete', {id: id});
                        });
                    }
                });
        },