KnockoutJs 超链接到新标签

KnockoutJs Hyperlink to new Tab

我有一个 ASP.Net MVC 网站,在视图中使用了 KnockoutJS 和 KOGrid。它在一个特定的列中动态呈现超链接,如下所示:

cellTemplate: '<a data-bind="text:$parent.entity.sendPort, attr: { href: $parent.entity.sendPortLink}" ></a>'

已决定在单击时,浏览器应在新选项卡中显示新页面。因此,我尝试按如下方式添加 "target" 属性:

cellTemplate: '<a data-bind="text:$parent.entity.sendPort, attr: { href: $parent.entity.sendPortLink, target:"_blank"}" ></a>'

这没有用。超链接已呈现但无法点击。

我该怎么做?

问题出在双引号中。双引号用于 data-bind 属性和 target 属性。 target 属性 的左双引号关闭 data-bind 属性。

也没有必要将目标放在数据绑定中。数据不是动态的,因此可以简单地添加到 a 元素:

尝试将其更改为:

cellTemplate: '<a target="_blank" data-bind="text:$parent.entity.sendPort, attr: { href: $parent.entity.sendPortLink }" ></a>'