所以我使用这段代码为kendo下拉列表创建模板
<script id="itemTemplate" type="text/x-kendo-template">
#if(Text.indexOf('(Deleted)') > -1){#
<span style="display:none"></span>
#}else{#
<span>#:Text#</span>
#}#
</script>
这里的问题是代码行被解释为空格。我的意思是增加了空白区域。 当我将一个函数绑定到select事件并尝试获取所选项目的文本时
function typeChanged(e) {
console.log(e.item.text());
}
$("#...").data("kendoDropDownList").bind("select", typeChanged);
什么console.log返回的是上面有2个空行和2个下面的文本。请参考图片。所以我想知道有没有办法在调用trim函数旁边去掉那些空行?
其他信息 当我在模板中添加更多代码行时,它还添加了一行额外的行
<script id="itemTemplate" type="text/x-kendo-template">
#if(Text.indexOf('(Deleted)') > -1){}# <-- Added this
#if(Text.indexOf('(Deleted)') > -1){#
<span style="display:none"></span>
#}else{#
<span>#:Text#</span>
#}#
</script>
当我完全删除使用模板
时旧:
@(Html.Kendo().DropDownListFor(m => m)
.BindTo(list)
.DataTextField("Text")
.DataValueField("Value")
.HtmlAttributes(attributes)
...
.TemplateId("itemTemplate")
.ValueTemplateId("tagTemplate")
)
新:
@(Html.Kendo().DropDownListFor(m => m)
.BindTo(list)
.DataTextField("Text")
.DataValueField("Value")
.HtmlAttributes(attributes)
...
< deleted >
.ValueTemplateId("tagTemplate")
)
Console.log()返回正常。
答案 0 :(得分:0)
您需要空的span标签吗?如果没有,您可以反转模板中的逻辑,以便永远不会创建空白区域。
#if(Text.indexOf('(Deleted)') == -1){#
<span>#:Text#</span>
#}#
答案 1 :(得分:0)
答案是,一旦我把它全部添加到它工作的一行,剑道实际上正在读取换行符
<script id="itemTemplate" type="text/x-kendo-template">#if(Text.indexOf('(Deleted)') > -1){#<span style="display:none"></span>#}else{#<span>#:Text#</span>#}# </script>