我正在尝试将jQuery ColumnListView库(找到http://code.google.com/p/jcvl/)与KnockoutJS一起使用。
当在jCOlumnListView中触发onItemChecked事件时,我遇到了在我的ViewModel上触发函数的问题:
以下是一个例子:
var items = jQuery.fn.jColumnListView({
id: 'heirarchyclv',
width: 400,
columnWidth: 150,
columnHeight: 200,
columnMargin: 8,
paramName: 'columnview',
columnNum: 4,
appendToId: 'heirarchy',
elementId: 'heirarchyTest',
removeAfter: false,
columnMinWidth: 120,
columnMaxWidth: 200,
childIndicator: true,
leafMode: true,
checkAndClick: true,
useSplitters: false,
onItemChecked: function (item) {
// fire the showChildren method on the ViewModel
}
});
这是在为html中绑定的ul加载数据之后设置的。第一个列表视图中的列表工作正常,但我希望能够单击视图中的一个项目并使我的showChildren
上的方法ViewModel
被解雇,就像我有将列表中的按钮绑定到showChildren
方法。
我以为我可以这样做: onItemChecked:function(item){ 的console.log(项目); ko.contextFor(item.elems.elem [0])showChildren(); }
但是会导致js错误,ko.contextFor(item.elems.elem[0])
未定义。
任何帮助将不胜感激。如果我能更好地提出这个问题,请告诉我。