我可以在Kendo ListView的Kendo模板的字段上将Encoded设置为False吗? 在这里,我在列表上有一个网格。正如您在列表中看到的那样,富文本格式将被显示为HTML,而在Grid的enoccing设置为False的网格中,RIch文本将被显示为文本。我可以在ListView中想要的字段(Comment)上将编码设置为false吗?如果不是,那我有什么选择,因为我无法在Kendo模板中渲染编辑器...编辑:目标是删除仅需要列表的网格。
@(Html.Kendo().Grid<WorkflowItemCommentModel>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(e => e.Comment).Width(300).Encoded(false);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("CommentsRead", "WFItem").Data("getWorkflowItemID"))
)
)
<div class="col-sm-2"></div>
<div id="comments-list" class="col col-sm-10">
@(Html.Kendo().ListView<WorkflowItemCommentModel>()
.Name("CommentList")
.TagName("div")
.Events(e => e.DataBound("onCommentListDataBound").Change("onCommentCriteriaChange"))
.ClientTemplateId("itemCommentTemplate")
.DataSource(dataSource =>
{
dataSource.Read(read => read.Action("CommentsRead", "WFItem").Data("getWorkflowItemID"));
dataSource.Sort(sort => { sort.Add(f => f.CreatedDate); }).ServerOperation(false);
})
.Selectable(s => s.Mode(ListViewSelectionMode.Single))
)
模板:
@*//WFITEM COMMENT TEMPLATE*@
<script type="text/x-kendo-tmpl" id="itemCommentTemplate">
<div class="step">
<div class="step-wrapper">
<dl class="step-list-details">
<dt class="name"><b>Name:</b>#:CreatedByUserName# <b>Date:</b> #:CreatedDate#</dt>
<dd class="stepNum">
<b>Comment:</b>
<div contenteditable="true">
#:Comment#
</div>
</dd>
<dd class="title">
<b>Internal Comment:</b> #:InternalComment#
</dd>
<dd class="stepStatus">Status: Status Test</dd>
</dl>
<div class="btn btn-primary" id="viewStep">View</div>
</div>
</div>
</script>
我希望我的列表文本能够像在网格中一样呈现,且编码设置为false:
答案 0 :(得分:1)
是的,您可以使用<div id="example"></div>
<script>
var template = kendo.template("<div id='box'>#= firstName #</div>");
var data = { firstName: "<b>Todd</b>" }; //Data with HTML tags
var result = template(data); //Pass the data to the compiled template
$("#example").html(result); //display "Todd" in a bold font weight
</script>
强制模板不对输出进行编码。请参见documentation的以下示例:
<script>
请注意,这可能会使您的站点暴露于跨站点脚本(XSS)漏洞。至少,您可能要确保数据不包含任何GetValue
标签。