如何使用Knockout.js绑定查询字符串参数?

Dav*_*ith 9 knockout.js

我有以下代码:

<div data-bind="foreach: roomba">
  <h3 data-bind="text: name"></h3>
  <a href="/arena/bots/status?id=1234">View Status</a>
</div>
Run Code Online (Sandbox Code Playgroud)

我的困境是我希望锚标签中的id参数绑定到当前正在迭代的roomba的id.我该怎么做呢?

小智 11

尝试在视图绑定中定义URL.然后绑定到data-bind ="attr"中的url

看看这个例子:

<ul id="MemberSearch" data-inset="true" data-bind="foreach: members">    
<li> <a  data-bind="attr: { href:Url},text:Name"></a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

然后在你的模型中

function Member(data) {
            this.Name = ko.observable(data.FirstName + ' ' + data.LastName);
            this.Url = ko.observable("/member/details/"+data.Id);
        }
Run Code Online (Sandbox Code Playgroud)


Man*_*rin 7

你应该能够做到这一点

<a data-bind="attr: { href: '?id=' + $data.id}"></a>
Run Code Online (Sandbox Code Playgroud)

无论如何,为我的榜样工作