我有一个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>'
这不起作用。超链接已呈现但无法单击。
我该怎么做?
答案 0 :(得分:1)
问题在于双引号。双引号用于data-bind
属性和target
属性。 target
属性的开头双引号会关闭data-bind
属性。
此外,无需将目标放在数据绑定中。数据不是动态的,因此可以简单地添加到a
元素:
尝试将其更改为:
cellTemplate: '<a target="_blank" data-bind="text:$parent.entity.sendPort, attr: { href: $parent.entity.sendPortLink }" ></a>'