我只有一个模式窗口,里面有telerik网格。但我需要在我的网格呈现图像,因为据我了解,我不能使用@两次。这里是关于这个问题的博客文章Link嵌入标记块不能嵌套。只允许一级内联标记。 MVC RAZOR
有人可以帮助我。
我的代码
@{ Html.Telerik().Window()
.Name("images")
.Title("Select an Image")
.Content(@<text>
@(Html.Telerik().ComboBox()
.Name("AjaxComboBox66")
.AutoFill(true)
.SelectedIndex(0)
.BindTo(new SelectList(Model.PhotoFolders, "ID", "Name"))
.Filterable(filtering => filtering.FilterMode(AutoCompleteFilterMode.StartsWith))
.HighlightFirstMatch(true)
.ClientEvents(events => events
.OnChange("onChange")
)
)
@(Html.Telerik().Grid<AjaxImages>()
.Name("Grid")
.DataKeys(keys => keys.Add(c => c.ID))
.Columns(columns =>
{
columns.Template(
@<text>
<img src='@item.Url' />
//Here is my error. I need helper function
</text>
).Title("Picture");
})
.DataBinding(dataBinding => dataBinding.Ajax().Select("GetImages", "UserProducts"))
.Scrollable(scrolling => scrolling.Enabled(true))
.Sortable(sorting => sorting.Enabled(true))
.Pageable(paging => paging.Enabled(true).PageSize(20).Total(100).Style(GridPagerStyles.NextPreviousAndNumeric))
.Filterable(filtering => filtering.Enabled(true))
.Groupable(grouping => grouping.Enabled(false))
.EnableCustomBinding(true)
.Footer(true))
</text>)
.Width(400)
.Draggable(true)
.Modal(true)
.Visible(false)
.Render();
}
我GetImages函数返回我JSON与 “ID” 和 “URL”。
几乎完成,请检查两个屏幕截图。我没有得到任何错误,但图像是空的。我试图渲染为文本,我的ajax正在工作。你知道为什么我没有得到我的图像吗? http://prntscr.com/9ix3a http://prntscr.com/9ix3x –
您正在使用ajax绑定,因此需要使用客户端模板,而不是服务器绑定模式模板。试试这个: 'columns.Bound(c => c.ID).ClientTemplate(“”)。标题(“图片”);' – Igorrious
这就是正确答案! U规则! –