knockoutjs函数用参数设置href url

时间:2015-10-23 17:43:54

标签: javascript knockout.js

我希望能够在knockoutjs中以编程方式设置超链接的url,这就是我正在做的事情:

self.openOrderHref = function (order) {
            return "OrderDetails.aspx?action=view&OrderNumber=" + order.OrderNumber;
        };

在html中我有:

> <a data-bind="attr: { href: $root.openOrderHref }"
> class="gradient-button action">Details</a>

我知道如何解决这个问题?

此刻的结果是:

  

http://localhost:5043/Underclass/function%20%28order%29%20%7B%20%20%20%20%20%20%20%20%20%20%20%20return%20%22OrderDetails.aspx?action=view&OrderNumber=%22%20+%20order.OrderNumber;%20%20%20%20%20%20%20%20}

1 个答案:

答案 0 :(得分:2)

你的openOrderHref是一个有一个参数order的函数,但是你在绑定中使用它而没有任何参数,因此KO会将你的整个函数定义用作字符串作为链接{{1 }}

要解决此问题,您需要将某些内容传递给您的函数。据推测,您的链接位于href绑定中,其中foreach表示循环中当前迭代的项目,因此您只需编写:

$data