页面加载或渲染时的BootStrap / JQuery Call方法

时间:2013-04-04 10:51:04

标签: jsp sorting backbone.js twitter-bootstrap

我正在尝试对程序列表进行排序,首先列出“已检查”或包含的程序。但是,我很难使用bootstrap并在页面加载时获取方法。这是一个.jsp文件,并使用主干和引导程序。

这是我现有的功能,它可以正常工作,但只有点击了排序按钮。

  

onSortCheckedClick:function(e){                 e.preventDefault();                   var anchor = $(e.currentTarget);

            var li = anchor.parent("li.sortChecked");
            if (li.hasClass("active")) {
                return;
            }

            var sortDirectionOrder = anchor.attr("data-direction");
            var sortDirectionColumn = anchor.attr("data-sortByCheck");
            var attributesNames = sortDirectionColumn.split('.');

            var sortedPrograms = this.programs.sortBy(function(program) {
                var answers = program.toJSON();

                var unChecked = new Array();

                var selectAnswers, unselectAnswers;
                if(answers.selected === true){
                    selectAnswers = answers;
                }else if(answers.selected === false){
                    unselectAnswers = answers;
                }

                return unselectAnswers;
            });

            if (sortDirectionOrder === 'asc') {
                sortedPrograms.reverse();
            }

            this.$("thead li.sortChecked").removeClass("active");
            li.addClass("active");
            this.programs.reset(sortedPrograms);
        },

以下是已注册的事件监听器。在呈现程序列表时,调用上述方法的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在呈现页面后调用该函数。

$(document).ready(function(){
//Call your function here
//It is assumed your the list of programs are rendered on page load
//-- Otherwise --
// Call renderProgram() and then call or add event listeners to onSortCheckedClick()
});

在renderProgram()完成后,您可以使用jQuery延迟对象来处理onSortCheckedClick的调用。

在main html文件上调用ready函数(或将其包含在主html文件中)。