如何处理自定义JQuery小部件中的选项更改?

时间:2013-09-17 13:04:56

标签: javascript jquery jquery-ui

我使用JQuery工厂创建了一个小部件。它有一个选项。创建窗口小部件后,可以更改该选项。

如何处理期权变更?这有什么事件或方法吗?

我想要这样的事情:

$.widget("myWidget", {
    options: {
        myOption: 'defaultValue'
    },

    _create: function() {
       this.initWidget(); 
    }

    initWidget: function() {
      //do initialization
    }

    _onOptionChange: function() {
       this.initWidget(); 
    }

}

1 个答案:

答案 0 :(得分:0)

我找到的解决方案是覆盖方法_setOption和_setOptions。

_setOptions: function( options ) {
    var key;
    for ( key in options ) {
    this._setOption( key, options[ key ] );
    }
    return this;
},

_setOption: function( key, value ) {
    if (key === "myOption") {
        this.initWidget();
    }    
}