嗨大家好是淘汰赛的新手,我想在一个装订中使用两个点击功能。我尝试了如下,但只有第一部分正在工作。如果我使用attr:{href:'#/ User / Add /'+ user_id点击之后,attr将起作用,选择用户不能正常工作。在这方面请帮助我。使用Durandal作为一个漫游者
<a data-bind="click: $root.SelectedUser,attr: { href: '#/User/Add/' + user_id }"></a>
答案 0 :(得分:2)
我建议您在viewmodel中创建一个功能,选择用户,然后重定向到您想要的位置:
define(['plugins/router'], function(router){
var userIds = ['1', '2', '3'] //this is just an example. use your own ids here
var SelectedUser = ko.observable('');
var buttonClick = function(user){
SelectedUser(user);
router.navigate('#/User/Add/' + user);
}
return {
userIds: userIds,
buttonClick: buttonClick
}}
你的HTML中的:
<ul data-bind="foreach: userIds">
<li>
<a data-bind="click: $parent.buttonClick"></a>
</li>
答案 1 :(得分:0)
你有什么理由要这样做吗?
另一种方法是在点击事件中调用durandal路由。
var clickEvent = function(data, e) {
doSelectedUserStuff();
callDurandalRoute('#/User/Add/' + user_id);
}