我有这个链接,我有一个数据绑定到它与userId和typeId等属性。如何将这些相同的ID传递到我的javascript('click')...功能?
<div class="removeUser">
<a id="userRemoveSubmit" class="icon-minus" href="#" data-bind="attr: { 'data-user-id': ID(), 'data-type-id': TypeId()}"></a>
</div>
使用Javascript:
$(document).on('click', '.removeUser', function (event) {
$.views.Project.RemoveUser($(this).attr('data-user-id'), $(this).attr('data-type-id'));
});
当我尝试运行这个时,我得到userId和typeId都是未定义的。我如何从视图中正确传递id?
答案 0 :(得分:1)
您可以在knockout中使用“click”绑定,而不是连接单击事件处理程序。 click绑定调用的函数将接收当前模型值作为第一个参数。所以你可以这样做:
<a class="icon-minus" href="#" data-bind="click: removeUser"></a>
视图模型中的removeUser函数可以执行此操作:
function removeUser(item) {
alert(item.ID());
alert(item.TypeId());
}
请参阅knockout documentation on click binding(特别是“注1”)。