2012-06-05 89 views
3

我想學習在我的MVC應用程序中使用的把手。在我的模板,我有以下:把手和textarea

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

執行上面我看到了正確的寬度和高度的文本區域之後,但我沒有看到任何數據在裏面。

我也嘗試插入value="{{this.EmailHtml}}"但它仍然無法正常工作。

我如何讓textarea填充到我的模板中?

回答

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

我可以證實@artlung答案。我自己也遇到了同樣的問題。當我使用''時,沒有任何東西在輸入區域內呈現。但是,如果我將這個變量放在''之間,它就可以工作。 – AllJs

0

隨着把手,你會希望使用無界助手,這樣你就不會在你的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> 

參考:Handlebars basics

0

假設你保持在一個變量TPL車把HTML模板,而在另一個varible數據。然後你就書面方式: -

HandleBars.compile(tpl)(data) 

的在你已經寫車把模板: -

​​3210