3

我正在尝试学习在我的 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}}"但它仍然不起作用。

如何在我的模板中填充文本区域?

4

3 回答 3

5

那不应该更像:

<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>

a 的值<textarea>不在value属性中,而是位于标签之间。请参阅:http : //www.w3.org/TR/html401/interact/forms.html#h-17.7、http: //www.w3.org/TR/html-markup/textarea.html等。

于 2012-06-21T22:29:17.817 回答
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>

参考:车把基础知识

于 2012-12-21T05:41:45.040 回答
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>
于 2014-06-08T07:48:16.930 回答