asp.net-mvc - 如何在 Kendo 网格单元格上将图标显示为值?

标签 asp.net-mvc image datagridview kendo-grid kendo-asp.net-mvc

我有一个名为 Priority 的表,它有一列名为 IconUrl 的列,用于存储图标的路径,如下所示:

| ID     | Priority      | IconUrl       
------------------------------------------------------------| 
| 0      | Normal        | /../../Content/icons/normal.png  |
| 1      | Urgent        | /../../Content/icons/urgent.png  |
| 2      | Blocker       | /../../Content/icons/blocker.png |

我想根据 Kendo Grid 上每条记录的 IconUrl 值显示图标。我尝试了如下所示的一些方法,但都没有解决问题。如何设法只显示图标图像?

columns.Bound(c => c.Priority).ClientTemplate("<img src='" + Url.Content("~/") + "#=IconUrl#' height='62' width='62'/>");

columns.Bound(c => c.Priority).ClientTemplate("<img src='" + Url.Content("#=Model.IconUrl#") + "'/>'");

最佳答案

该问题可能是由 '/../../' 引起的在你的网址的开头。

打开浏览器的开发者工具,查看单元格可以看到那里有什么网址。

如果您的内容文件夹位于您的主目录或项目目录中,则使用 Priority 中的文本重新创建 URL col 可能会起作用。

columns.Bound(c => c.Priority).ClientTemplate("<img src='" + Url.Content("~/Content/icons/") + "#=Priority.toLowerCase()#.png' height='62' width='62'/>");

Url.Content function is used to map virtual paths 。例如,在其他应用程序中拥有应用程序。如果传递给函数的字符串开头没有波形符,它将仅返回未更改的 url 字符串。

所以在你的第二个例子中调用 "<img src='" +Url.Content("#=IconUrl#") + "'/>'"将产生与 <a src='#=IconUrl#'> 相同的结果

关于asp.net-mvc - 如何在 Kendo 网格单元格上将图标显示为值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32215230/

相关文章:

asp.net-mvc - 依赖注入(inject)能走多远?

javascript - 删除带有空 src 的图像标签

PHP整理上传的照片

c# - 使用所见即所得编辑器编辑 HTML

C# DataGridView如何照亮当前List<Action>

c# - EF Core HasData() 未在 OnModelCreating 内调用

javascript - 具有数据库连接的 ASP.NET MVC 中的 HighChart

c# - 如何在 Controller 中生成防伪 cookie 和 token

javascript - 如何使用输入上传图像,然后使用 img 标签渲染它的 View ?

c# - 清除 Datagridview 中的重复项