2

我正在使用 jsviews 来呈现以下模板

recoList = [{title:"Apple"},{title:"Two Apples"}];

<script id="sampleTmpl" type="text/x-jsrender">
{{for recoList}}
  <input type="text" value={{:title}} />
{{/for}}
</script>

每当 title 的值中包含空格时,例如“Two Apples”,输入框就会呈现为

<input type="text" value="Two" />

空格后面的字简直就是剪掉了!

我怎样才能将完整的字符串赋予值?

4

2 回答 2

1

原因很简单。您缺少引号:

<input type="text" value={{:title}} />

应该:

<input type="text" value="{{:title}}" />

JsRender 只是用值替换标签,所以:

<input type="text" value=Two Apples />

应该:

<input type="text" value="Two Apples" />

您说引号不起作用,但上述内容当然应该起作用。使用data-link="title"将添加引号,但还会添加数据绑定,因此您可以双向绑定到标题字段...

于 2014-01-29T06:57:13.523 回答
1

添加 adata-link而不是value={{:title}}现在可以解决问题。

像这样:

<input type="text" data-link="title" />

但是,我仍然不知道为什么value={{:title}}在空格之后拼接字符串。

于 2014-01-28T11:55:56.120 回答