2013-04-15 107 views
2

如何呈現一個模板的內容..我可以;噸穿過了這一點:如何使用JavaScript渲染模板值 - 流星

<body> 
    {{> dash}} 
</body> 

<template name="dash"> 
<div id="example2" class='example_block'> 
    <form name = "frm"> 
     <table> 
      <tr> 
       <td>Template Name 
       <td>: 
       <td><input type="text" name = tname class = "tname"> 
     </frm> 
     <div class='demo'> 
      <input type='button' value='Click Here to Create Window' class="btn"/> 
     </div> 
    </div> 
<div id = "window_block8" style="display:none;"></div> 
</template> 

<template name="t1"> 
    try1 
</template> 

<template name="t2"> 
    try2 
</template> 

    //client.js 
Template.dash.events({ 
'click input.btn' : function(){ 
    var temp = document.frm.tname.value ; 
    Session.set("template" , temp); 
      $('body').append(Meteor.render(Template[Session.get("currentTemplate")]())); 
    } 
}); 

一些:對你有所幫助

例如/謝謝這樣的事情..但代碼不會在我的工作

回答

5

Meteor.render(Template.try)返回一個文檔片段,您可以插入到您的頁面與jQuery或香草JS。

Template.dash.aw = function() { 
    document.body.appendChild(Meteor.render(Template.try)); 
} 

注意,您可以使用數組式的符號,如果模板名稱是變量:

document.body.appendChild(Meteor.render(Template[Session.get("currentTemplate")])); 

或者,如果你只是想返回一個變量,而不是整個模板:

Template.try.var = function() { 
    return 'Hello'; 
} 
Template.dash.aw = function() { 
    return Template.try.var(); 
} 
// Template.dash.aw = Template.try.var = function() { 
// return 'Hello'; 
// } 

評論功能可能不足,因爲你想要一些在Template.dash.aw

+0

感謝邏輯兄弟.. :) ..但我想要的是獲取數據的模板名稱裏面=嘗試... –

+0

對不起,代碼沒有正確格式 - 看前兩個例子 – Swadq

+0

感謝..但爲什麼沒有發生在我的代碼:( –