在点击事件meteorjs

时间:2016-07-26 00:36:53

标签: javascript meteor

我是Meteor的新手。我想在每次单击按钮时插入一个新表。我在模板中实现了表,但是我不确定每次单击按钮时如何插入模板的实例。

HTML

<template name="addTable">
  <button type="button" id="addTables" class="btn btn-default" aria-label="Left Align">
</template>

JS

Template.addTable.events({
   'click #addTables': function(e){
       var button = $(e.currentTarget);
       button.before(//I want to add code here to insert one instance of template Table here)
    }
})

我想要的效果是点击一次按钮后,可以在html中的{{> Table}}之前插入一个<button type="button" id="addTables" class="btn btn-default" aria-label="Left Align">。任何人都知道如何做到这一点?非常感谢!

1 个答案:

答案 0 :(得分:1)

这已准备好使用代码,只需根据您的要求调整表格和行样式。

&#13;
&#13;
Template.table.events({
	'click #addRow'(e,t){
		let table = t.find('.table');;
		Blaze.render(Template.row,table);
	}
})
&#13;
<body>
  {{> table}}
</body>
<template name="table">
  <table class="table">
    <thead>
      <tr>
        <th>Firstname</th>
        <th>Lastname</th>
        <th>Email</th>
      </tr>
    </thead>
    <tbody>
      <tr id="myRow">
        <td>John</td>
        <td>Doe</td>
        <td>john@example.com</td>
      </tr><br>
    </tbody>
  </table>
  <button class="btn btn-warning pull-right" id="addRow">Add Row</button>
</template>
<template name="row">
<table class="table">
  <tbody>
  <tr>
    <td>John</td>
    <td>Doe</td>
    <td>john@example.com</td>
  </tr>
  </tbody>  
</table>
</template>
&#13;
&#13;
&#13;

这里我们正在使用Blaze.render,它接下来要渲染的行和table作为父表。

您可以使用t.find()为模板内的类找到该表。