【问题标题】:AngularJS ui-grid render hyperlinkAngularJS ui-grid 渲染超链接
【发布时间】:2014-11-09 00:02:09
【问题描述】:

我正在使用 Angular ui-grid 2.0.12,是否可以在给定单元格内添加超链接,或者任何类型的 html 代码?我一直在尝试遵循这个提示:Add html link in anyone of ng-grid 虽然它似乎不适用于 ui-grid,可能是因为 ng-grid 过去的行为不同或现在的语法不同。

【问题讨论】:

  • 如果你附上你的代码会很有帮助

标签: angularjs angular-ui-grid


【解决方案1】:

实际上,cellTemplate 在 ui-grid 中的工作方式与在 ng-grid 中的工作方式相同。

$scope.gridOptions.columnDefs = [
     { name: 'firstName' },
     { name: 'lastName'},
     { name: 'Hyperlink',
         cellTemplate:'<div>' +
                   '<a href="http://stackoverflow.com">Click me</a>' +
                   '</div>' }
];

Working demo(在新标签页中打开链接,因为 plunker 无法处理 SO 的精彩)

【讨论】:

  • 谢谢Goodzilla,访问json属性的语法是什么?我无法让 getProperty() 在 ui-grid 上工作:plnkr.co/edit/stmNTirT6L8INhTAmdxK 谢谢!
  • {{row.entity.firstName}} 将完成这项工作:)
  • 看起来更好。
  • 像这个例子一样硬编码你的“href”是没有用的!您需要能够从字段中的数据动态构建您的href,这会将您带到有意义的地方而不是“点击我”!!!
  • 如果我想要一个动态值而不是“点击我”怎么办?就像我在同一个 json 中返回“公司名称”一样,我如何显示这些名称来代替“点击我”
【解决方案2】:

动态链接略有不同:

$scope.gridOptions.columnDefs = [
   { 
     name: 'Hyperlink',
     cellTemplate:'<div><a ng-href="{{row.entity.hyperlink}}">Click me</a></div>'
   }
];

http://plnkr.co/edit/gDVUBwHolPnEatOrtt26?p=preview

【讨论】:

  • 效果很好,只是在超链接后多了一个 ]。谢谢马塞洛
猜你喜欢
相关资源
最近更新 更多
热门标签