我有一个500字符的段落。我想在第155个字符后插入...并且应该隐藏其他字符。如果有人知道jsrender中substring的语法和用法。指导我
答案 0 :(得分:2)
JsRender允许您在标签中使用表达式。
查看文档主题,例如 Tag syntax 或 Paths and expressions 。
你可以这样写:
{{:myfield.substring(0, 155)}}
或
{{:myfield.substring(0, 155) + '...'}}
或(完整情景):
{{:myfield.subscript(0, 155) + (myfield.length>155 ? '...' : '')}}
鉴于该表达式的复杂性,将其封装在帮助器(http://www.jsviews.com/#helpers)或自定义标签(http://www.jsviews.com/#tags)中会更清晰:
例如,您可以定义帮助程序:
$.views.helpers("trimLength", function(value, maxLength) {
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{:~trimLength(myfield, 155)}}
或定义自定义标记:
$.views.tags("trim", function(value) {
var maxLength = this.tagCtx.props.maxLength;
if (maxLength && value.length > maxLength) {
return value.substring(0, maxLength ) + "...";
}
return value;
})
然后写:
{{trim myfield maxLength=155 /}}