【问题标题】:Tristate checkbox in emberember 中的三态复选框
【发布时间】:2013-04-01 07:14:02
【问题描述】:

我必须在 ember 中快速实现三态复选框,所以我想知道是否有人可以给我一个指针,指向在 ember 中实现三态复选框?

【问题讨论】:

  • 你是怎么解决这个问题的?

标签: javascript ember.js handlebars.js ember-data


【解决方案1】:

Ember 的当前版本 (2.0) 通过 indeterminate 属性支持此功能。

{{input type="checkbox" 
    name=name 
    checked=isChecked 
    indeterminate=isIndeterminate}}

http://emberjs.com/api/classes/Ember.Templates.helpers.html#toc_checkbox

【讨论】:

    【解决方案2】:

    不知道你是否还需要这个,这是我用的:

    FM.TriStateCheckbox = Ember.Checkbox.extend({
      attributeBindings: ['indeterminate'],
      indeterminate: false
    })
    

    您可以像使用普通复选框一样使用它

    ...
    <th>{{view FM.TriStateCheckbox checkedBinding="allSelected" indeterminateBinding="someSelected"}}</th>
    ...
    

    请注意,绑定不确定(即,本案例someSelected)也应该返回false @ all时。

    someSelected: function(key, value) {
      if (this.get('allSelected')) { return false }
      return this.get('children').someProperty('isSelected', true)
    }.property('children.@each.isSelected')
    

    【讨论】:

      猜你喜欢
      • 2010-11-18
      • 2010-12-16
      • 1970-01-01
      • 2016-10-26
      • 2011-03-07
      • 1970-01-01
      • 1970-01-01
      • 2011-05-16
      • 2019-01-14
      相关资源
      最近更新 更多