我是一个适度的 Knockout 用户,但这是我第一次在 MVC4 环境中使用它。所有通常的绑定都正常工作,但我遇到了一个问题,当我加载然后绑定部分视图时,我的 href 属性绑定似乎没有被触发。
这是我的部分视图标记:
<div id="quick-panel">
<a class="icon-set" data-bind="attr: { href: Contact.fullEditUrl() }" >📝</a>
</div>
<div id="rightbarcontent">
....
</div>
<script>
ko.applyBindings(window.contact.viewmodel, document.getElementById("rightbarcontent"));
</script>
这是我定义 Contact.fullEditUrl() 的视图模型片段:
window.contact.Contact = function (data) {
var contact = this;
this.id = ko.observable(data.id);
this.fullEditUrl = ko.computed(function() {
return "http://localhost:24191/contact/contactfulledit/" + data.id;
});
}
我在加载 DOM 后触发命名空间绑定。我在同一页面上的所有其他绑定(大约 20 个)都是正确的,但是从来没有为我的锚标记设置 href,我不确定为什么。我已经在各种站点和线程上仔细检查了我的语法,它似乎是正确的