在此代码中:http://jsfiddle.net/PDwBF/1/
链接到谷歌不起作用。如何修复?
<ul data-bind="foreach: Items">
<li data-bind="click: $root.SetCurrent">
<p data-bind="text: id"></p>
<div>
<a href="http://google.com" target="_blank">Go to google</a>
</div>
</li>
</ul>
function ViewModel()
{
var self = this;
self.SelectedItem = ko.observable();
self.Items = ko.observableArray([]);
self.SetCurrent = function(item)
{
self.SelectedItem(item);
};
};
var vm = new ViewModel();
ko.applyBindings(vm);
vm.Items.push({id: 55});
vm.Items.push({id: 66});
vm.Items.push({id: 77});
答案 0 :(得分:2)
一种选择是返回true;从你的SetCurrent方法,这将 允许默认操作继续进行: http://jsfiddle.net/rniemeyer/PDwBF/3/
感谢rpn
https://groups.google.com/group/knockoutjs/browse_thread/thread/6ef1081249377728
答案 1 :(得分:0)
如果你添加一个返回true,它就可以了。
e.g。
function ViewModel()
{
var self = this;
self.SelectedItem = ko.observable();
self.Items = ko.observableArray([]);
self.SetCurrent = function(item)
{
self.SelectedItem(item);
return true;
};
};