Coffeescript 按钮onclick不工作。其显示为未定义的函数。我需要将按钮的id传递给deleteItem函数,以便删除该行

Coffeescript 按钮onclick不工作。其显示为未定义的函数。我需要将按钮的id传递给deleteItem函数,以便删除该行,coffeescript,Coffeescript,如何在单击coffeescript时将按钮的id传递给删除函数。deleteItem是删除函数。button onclick不起作用。其显示为未定义的函数。我需要将按钮的id传递给deleteItem函数,以便删除该行 # out: ./bill.js itemArray = [] costArray = [] results = "" maxId = 1 getData = () -> item = document.getEleme

如何在单击coffeescript时将按钮的id传递给删除函数。deleteItem是删除函数。button onclick不起作用。其显示为未定义的函数。我需要将按钮的id传递给deleteItem函数,以便删除该行

 # out: ./bill.js
    itemArray = []
    costArray = []
    results = ""
    maxId = 1
    getData = () ->
      item = document.getElementById("item").value
      cost = document.getElementById("cost").value
      quantity = document.getElementById("quantity").value
      object = {id:maxId,item:item,cost:cost*quantity,quantity:quantity}
      itemArray.push object
      maxId = maxId + 1
      display()

    deleteItem = () ->
      console.log "delete"

    display = () ->
      subTotal = 0
      tax = 0
      total = 0
      for item in itemArray
        subTotal = subTotal + item.cost
      tax = ((subTotal/100)*15)
      total = subTotal + tax
      j = 0
      results = "<table>"
      results+="<tr><td>"+"</td>"+"<td>"+"Item"+"</td>"+"<td>"+"Quantity&nbsp&nbsp"+"</td>"+"<td>"+"Price"+"</td></tr>"
      for item in itemArray
        j = j + 1
        results += "<tr><td>"+ "&nbsp&nbsp&nbsp&nbsp&nbsp" + j + "&nbsp&nbsp&nbsp&nbsp&nbsp"+ "</td>"
        results += "<td>"+ item.item+ "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp" + "</td>"
        results += "<td>"+ item.quantity + "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp" +"</td>"
        results += "<td>#{item.cost}</td><td><button id='#{item.id}' onclick = deleteItem /></td</tr>"
      results+="<tr><td>"+"</td>"+"<td>"+"</td>"+"<td>"+"Sub Total"+"</td>"+"<td>"+subTotal+"</td></tr>"
      results+="<tr><td>"+"</td>"+"<td>"+"</td>"+"<td>"+"Tax"+"</td>"+"<td>"+tax+"</td></tr>"
      results+="<tr><td>"+"</td>"+"<td>"+"</td>"+"<td>"+"Total"+"</td>"+"<td>"+total+"</td></tr>"
      billDisplay = document.getElementById("billDisplay")
      billDisplay.className = "rows"
      billDisplay.innerHTML = results


    addButton = document.getElementById("addButton")
    addButton.onclick = getData
#out:./bill.js
itemArray=[]
costArray=[]
结果=“”
maxId=1
getData=()->
item=document.getElementById(“item”).value
成本=document.getElementById(“成本”).value
数量=document.getElementById(“数量”).value
object={id:maxId,item:item,cost:cost*quantity,quantity:quantity}
itemArray.push对象
maxId=maxId+1
显示()
deleteItem=()->
console.log“删除”
显示=()->
小计=0
税=0
总数=0
对于itemArray中的项
小计=小计+项目成本
税=((小计/100)*15)
总计=小计+税金
j=0
结果=“”
结果+=“+”+“+”+“项目”+“+”+“数量”+“+”+“价格”+”
对于itemArray中的项
j=j+1
结果+=“+”+j+“+”
结果+=“”+项目。项目+“”
结果+=“”+项目数量+“”

results+=“#{item.cost}在这种情况下,您可以向方法提供元素(this)或直接提供id

<button id="someId" onclick="myFunction(this,  'someId')">...
。。。
还是你的情况

<button id='#{item.id}' onclick =\"deleteItem(this,'#{item.id}')\" />