jen*_*nas 8 html javascript ember.js
我有一个Ember.Select视图,我如何将一个禁用的属性添加/绑定到选项标签(而不是整个选择框).
即,我希望完成以下结果.
<select>
<option value="1" disabled>I am a disabled option</option>
<option value="2">Im selectable</option>
</select>
Run Code Online (Sandbox Code Playgroud)
Dar*_*kar 13
该Ember.Select视图不会开箱即用.您需要添加自定义属性绑定disabled和相应的计算属性,以告知Ember如何找到它.
一种简单的方法是在用于呈现选择的内容/数据项上添加disabled属性.
App.ApplicationController = Ember.Controller.extend({
choices: function() {
return [
Ember.Object.create({firstName: "Lorem", id: 1}),
Ember.Object.create({firstName: "Ipsum", id: 2, disabled: true}),
Ember.Object.create({firstName: "Dolor", id: 3}),
Ember.Object.create({firstName: "Sit", id: 4}),
Ember.Object.create({firstName: "Amet", id: 5})
];
}.property()
});
Run Code Online (Sandbox Code Playgroud)
并重新打开或扩展Ember.SelectOption视图添加disabled属性和计算属性.
Ember.SelectOption.reopen({
attributeBindings: ['value', 'selected', 'disabled'],
disabled: function() {
var content = this.get('content');
return content.disabled || false;
}.property('content'),
});
Run Code Online (Sandbox Code Playgroud)
这是一个有效的jsbin.请注意,该ipsum选项已禁用.
| 归档时间: |
|
| 查看次数: |
2446 次 |
| 最近记录: |