knockoutjs - multiple bindings on click event

后端 未结 4 881
隐瞒了意图╮
隐瞒了意图╮ 2020-12-16 10:27

I would like to know if it is possible to create multiple bindings on an event in knockout.js

example:



        
4条回答
  •  北海茫月
    2020-12-16 11:02

    EDIT: I accidentally used the MooTools typeOf() without thinking. Fixed.


    Here's what I came up with. I admit it's overkill for most situations but the syntax is a bit cleaner on the template side:

    View Model:

    var ViewModel = new function() {
        this.call = function(functions,args) {
            if (!(functions instanceof Array))
                functions = [functions];
            if (!(args instanceof Array))
                args = [args];
    
            return function() {
                for (var i = 0, l = functions.length; i < l; i++) {
                    functions[i].apply(this,args);
                }
            }
        }
    
        this.testValue=ko.observable('Click me!');
        this.click1 = function(foo) {
            this.testValue('click1 ' + foo);
            alert(1);
        }
        this.click2 = function(foo) {
            this.testValue('click2 ' + foo);
            alert(2);
        }
    }
    

    and template

    Test span
    

提交回复
热议问题