Kendo ui 单击剑道列表视图模板中的事件
如何使用列表视图组件配置单击事件?调试脚本未在addToCart()内的断点上停止 ListView的定义:Kendo ui 单击剑道列表视图模板中的事件,kendo-ui,telerik,Kendo Ui,Telerik,如何使用列表视图组件配置单击事件?调试脚本未在addToCart()内的断点上停止 ListView的定义: $(“#main”).kendoListView({ 数据源:项目, 模板:kendo.template($(“#item”).html()), addToCart:函数(e){ 购物车。添加(如数据); } }); 模板: :产品名称 添加到购物车 编辑:如果listView以内联方式构建为一个剑道,则它可以工作。可观察的: var indexModel=kendo.obs
$(“#main”).kendoListView({
数据源:项目,
模板:kendo.template($(“#item”).html()),
addToCart:函数(e){
购物车。添加(如数据);
}
});
模板:
:产品名称
添加到购物车
编辑:如果listView以内联方式构建为一个
剑道,则它可以工作。可观察的:
var indexModel=kendo.observable({
项目:项目,,
购物车:购物车,
addToCart:函数(e){
购物车。添加(如数据);
}
});
kendo.bind($(“#内容”),indexModel);
添加到购物车
据我所知,如果你不使用剑道可观测,它就不是一个合适的绑定。例如,您不能在模板中使用“
,也不能将事件绑定到按钮
要使其正常工作,您可以向按钮添加jQuery事件处理程序,并从列表视图检索数据项(请注意,addToCart
不再在列表视图配置中定义):
函数addToCart(e){
var li=$(e.currentTarget).parent(),
listView=$(“#main”).data().kendoListView,
dataItem=listView.dataItem(li);
console.log(数据项);
}
$('#main')。在('单击','添加到购物车',添加到购物车');
我创建了一个用于演示的视图。“如果listView是内联构造的,它就可以工作“那么你解决了吗?我解决了我的问题,但为了将来的工作,我想知道如何通过以第一种方式定义ListView来解决这个问题。如果你把它作为一个答案,我会投票支持你的答案。”。我怀疑原因是ListView不是可观察的。工作代码中的声明性数据绑定应用于可观察对象。最初尝试添加单击事件时,没有要绑定的支持模型。这不是一个完美的解释,但可能对某些人有所帮助。值得注意的是,ListView
edit模板是一个合适的绑定。