我已经从数据库中生成了一个项目列表,我想为每个条目添加一个删除按钮,以删除所选项目。我知道onclick需要一个事件,但我不知道如何传递数据库ID,所以我知道要删除哪个记录。这是我的模板(把手):
<ul class="bill-list">
{{#each bills}}
<li>{{this.name}}</li>
<button>Edit</button>
<button onclick="deleteBill({{this._id}})">Delete</button>
{{/each}}
</ul>
当我点击删除时,我收到此错误: 未捕获的SyntaxError:无效或意外的令牌
有没有办法从事件中提取数据或id?
我的功能只是控制台日志:
function deleteBill(bill) {
console.log(bill);
}
答案 0 :(得分:0)
以下是您的代码片段,您会看到它应该有效:
var obj = { "bills" : [{"_id":1,"name":"name1"},{"_id":2,"name":"name2"},{"_id":3,"name":"name3"}]};
var source = document.getElementById("template").innerHTML;
var template = Handlebars.compile(source);
document.getElementById("output").innerHTML = template(obj);
function deleteBill(bill) {
console.log(bill);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.11/handlebars.js"></script>
<script id="template" type="text/x-handlebars-template">
<ul class="bill-list">
{{#each bills}}
<li>{{this.name}}
<button>Edit</button>
<button onclick="deleteBill({{this._id}})">Delete</button>
</li>
{{/each}}
</ul>
</script>
<div id="output"></div>