如何从一组复选框中绑定外部容器css
Knockout - How to bind outer container css from set of checkboxes?
好吧,我承认问题中的语法很糟糕,但下面是真相:
我在我的网站中使用以下内容:
- Twitter引导
- 淘汰赛
- 迪朗达尔
我试图添加一个css类的外部标签周围的复选框(在复选框的列表),所以它可以突出显示选中的复选框。基本上代码是这样的:
<div data-bind="foreach:values">
<label class="checkbox inline btn" data-bind="css: { }">
<input type="checkbox" data-bind="attr: { value: text }, checked: $parent.checkedValues" />
<span data-bind="text: text"></span>
</label>
</div>
所以,我要做的是将btn-primary类添加到被选中的复选框的外部标签中。而不是把完整的视图模型放在这里,我已经创建了一个提琴:http://jsfiddle.net/riceboyler/WEPRZ/1/
我认识到我可以使用$data对象来获取当前项目,但我不知道如何检查并查看当前项目($data.text)是否在checkedValues observableArray中。我敢肯定,这可能是基本的Javascript,我错过了,但有没有办法做到这一点,而不使用计算值?
您可以通过检查父节点的checkedValues数组直接在css
绑定中执行此操作。
<label
class="checkbox inline btn"
data-bind="css: {'btn-primary': $parent.checkedValues.indexOf(text) > -1}">
参见
您可以尝试以下谓词:
$parent.checkedValues().indexOf($data.text) >= 0
我创建了一个新版本的小提琴。
相关文章:
- JSPM与外部系统js文件绑定
- 控制器和外部指令之间的双向数据绑定
- 将外部lib绑定到我自己的javascript库中
- 取消绑定由加载jQuery'的外部脚本添加的事件;s的getScript函数
- 将内部作用域变量绑定到外部“模板”
- 使用具有挖空的外部.js文件不应用绑定
- 如何将 THIS 绑定到 PHP 中的外部函数
- 如何在使用 jQuery Mobile 外部页面链接时绑定未来事件
- 在单击外部 Via 挖空绑定处理程序时,从引导程序 3.3.6 关闭弹出框
- 余烬每循环加倍.使用内部每个循环变量的值绑定到外部每个循环的变量中命名相同的属性
- 挖空 JS 内部和外部绑定
- 控制器外部的角度绑定数据
- 绑定到外部模型的更改
- 使用外部 API 的数据绑定基诺 UI 网格
- 动态加载外部 JavaScript 并将其绑定到特定的 DOM 元素或命名空间
- 绑定 JavaScript:内联或外部(或脚本)
- 绑定到类外部按钮的公共属性与实例化对象时内部绑定的按钮的值不同
- Processing.js没有'不允许在firefox中绑定外部javascript
- 如何从一组复选框中绑定外部容器css
- 在jqx.dataAdapter中绑定外部源数据字段时浏览器崩溃