我剛剛在一週前開始使用meteor,並且正在嘗試爲我的第一個應用程序編寫一個項目的記錄時間。如何在meteor.js上多次使用相同的模板
在一天結束時,用戶可以進入並記錄他們的小時,其中包含2個下拉選擇菜單。首先是客戶下降。然後基於該客戶端(使用Session),客戶端項目的第二個下拉列表將自動填充,最後允許您在文本輸入中輸入您的小時數。
我有這個工作,但我也需要實現一個按鈕,所以你可以一次添加多行。如果用戶在不同的客戶端或客戶端項目上工作,可以使用類似jQuery Clone()的方法。
我試圖重新渲染行,一旦newRow被點擊,但第二行操縱第一行,因爲我假設他們都引用相同的模板。
爲了簡化? 1)如何複製最後一個下面的內容,以及2)如何爲一行或多行使用相同的模板並使它們互不影響?
任何想法/幫助是值得歡迎
<form id="add_time">
<template name="row">
<ul>
{{> clientsDD}}
{{> projectsDD}}
{{> hoursAndTasks}}
</ul>
</template>
<p><a href="#" id="newRow">Add another row</a>
<input type="submit" id="submit_hours" value="Submit"/>
</form>
Template.clientsDD.clients = function() {
return Clients.find({});
}
Template.projectsDD.projects = function(event) {
return Projects.find({"client.clientId" : Session.get("clientSelected")});
}
Template.addHours.events({
'change select[name="clientsDD"]' : function(event){
newClient = $(event.target).val();
Session.set("clientSelected", newClient);
},
'change select[name="projectsDD"]' : function(event){
newProject = $(event.target).val();
}
});