我正在使用 Kendo Mvvm 为从数据源获取的项目创建模板。我想做的是在我的模板中有一个可见的绑定,我可以为正在单击的特定模板打开或关闭,但我无法让它工作。
模板的 HTML 位置:
<ul id="memberlistview" data-template="memberSelectTemplate" data-bind="source: allmembers" style="color: #333333; float: left; padding: 0"></ul>
HTML 模板:
<script id="memberSelectTemplate" type="text/x-kendo-template">
<div style="float: left; height: 55px; width: 100%; margin-bottom: 5px; background-color: white" data-bind="click: addmember">
<div style="float: left; width: 40px; height: 55px; padding: 5px;" data-bind="visible: selecteduser">
<img src="~/Images/imgCheck-blue.png" />
</div>
<img data-bind="attr: { src: userpic}" style="float: left; width: 55px; height: 55px; border-radius: 5px;">
<h3 style="float: left" class="item-title" data-bind="text: userdisplayname"></h3>
<div style="display: none" data-bind="text: userid"></div>
<div style="display: none" data-bind="text: useradid"></div>
<div style="display: none" username></div>
</div>
</script>
Jquery设置模板:
$.ajax({
url: MobileHomePath + "GetAllUsers",
}).success(function (data) {
vm.set("allmembers", [])
if (data != null && data != "") {
var count = 0;
$.each(data, function () {
vm.get("allmembers").push({
selecteduser: false,
userpic: data[count].Pic,
userdisplayname: data[count].DisplayName,
username: data[count].UserName,
userid: data[count].Id,
useradid: data[count].AdId,
});
count = count + 1;
});
}
});
Jquery 尝试更改模板:
addmember: function (e) {
e.data.selecteduser = true;
},
allmembers: [
]