数据绑定锚标签的href属性
我试图将锚定属性绑定到KnockoutJS ViewModel字段。 我尝试了这样的事情:
<a data-bind="href: Link, value: Title"></a>
但是这不起作用。 在哪里可以得到一个html元素可能的数据绑定值列表?
你需要使用attr
绑定,这允许你设置你喜欢的任何属性。
例如:
<a data-bind="attr: { href: Link, title: Title }, text: Title">xxx</a>
在这里你可以find所有可能的绑定列表。
http://knockoutjs.com/documentation/value-binding.html
在左侧(侧边栏),您可以find其他绑定的链接,如文本,attr样式等等。
你可以这样做
attr: { href: Link}, text: Title
像xwrs
评论
或者创build一个模板http://knockoutjs.com/documentation/template-binding.html
希望这可以帮助
作为@ RichardFriend的答案 (以及更常用的选项)的替代方法 ,您可以编写一个自定义绑定处理程序,使您的视图变得更简洁:
ko.bindingHandlers['href'] = { update: function(element, valueAccessor) { element.href = ko.utils.unwrapObservable(valueAccessor()); } }; ko.applyBindings({ myUrl: 'http://stackoverflow.com', myText: 'Stack Overflow website' });
<script src="ajax/libs/knockout/3.2.0/knockout-min.js"></script> <a data-bind="href: myUrl, text: myText"></a>