我正在尝试学习用于我的MVC应用程序的把手。我的模板中有以下内容:
<div class="control-group">
<label class="control-label" for="EmailHtml">Html:</label>
<div class="controls">
<textarea id="EmailHtml" name="EmailHtml" cols="36" rows="5"/>
</div>
</div>
这是JSON:
{"data":{"Results":[{"EmailHtml":"xyz"}],"Name":"Test Business"}}
执行上述操作后,我看到TextArea的宽度和高度正确,但我看不到任何数据。
我也尝试插入value="{{this.EmailHtml}}"
,但它仍无效。
如何在我的模板中填充textarea?
答案 0 :(得分:4)
不应该更像是:
<div class="control-group">
<label class="control-label" for="EmailHtml">Html:</label>
<div class="controls">
<textarea id="EmailHtml" name="EmailHtml" cols="36" rows="5">{{EmailHTML}}</textarea>
</div>
</div>
<textarea>
的值不在value
属性中,而是位于代码之间。请参阅:http://www.w3.org/TR/html401/interact/forms.html#h-17.7,http://www.w3.org/TR/html-markup/textarea.html等。
答案 1 :(得分:0)
使用Handlebars,您将需要使用无界帮助器,这样就不会在textarea中获得Handlebars标记元素。
<div class="control-group">
<label class="control-label" for="EmailHtml">Html:</label>
<div class="controls">
<textarea id="EmailHtml" name="EmailHtml" cols="36" rows="5">{{unbound EmailHTML}}</textarea>
</div>
</div>
答案 2 :(得分:0)
假设您将把手html模板保存在变量tpl中,并将数据保存在另一个变量中。然后你正在写作: -
HandleBars.compile( tpl )(data)
您要编写的车把模板: -
<div class="control-group">
<label class="control-label" for="EmailHtml">Html:</label>
<div class="controls">
<textarea id="EmailHtml" name="EmailHtml" cols="36" rows="5">{{ data.Results.[1].EmailHtml}}</textarea>
</div>
</div>