在动态创建的按钮javascript中调用函数

在动态创建的按钮javascript中调用函数,javascript,jquery,html,Javascript,Jquery,Html,我试图创建一个带有onClick的按钮,该按钮调用一个带有签名deleteEntry(entry)的函数。然而,我得到一个错误,说条目是未定义的,即使我在同一个函数中使用它。我尝试添加转义字符,但没有任何效果。有什么想法吗 function addToTable(entry) { var result = "<tr>" result += "<td>" + entry.id + "</td>"; result += "<td>" + e

我试图创建一个带有onClick的按钮,该按钮调用一个带有签名deleteEntry(entry)的函数。然而,我得到一个错误,说条目是未定义的,即使我在同一个函数中使用它。我尝试添加转义字符,但没有任何效果。有什么想法吗

function addToTable(entry) {
  var result = "<tr>"
  result += "<td>" + entry.id + "</td>";
  result += "<td>" + entry.title + "</td>";
  result += "<td>" + entry.url + "</td>";
  result += "<td><button class=\"btn\" onClick=\"deleteEntry(" + entry + 
    ")\">Delete</button></td>";
  result += "</tr>";
  $("#table").append(result);
}
函数addToTable(条目){
var result=“”
结果+=“”+entry.id+“”;
结果+=“”+entry.title+“”;
结果+=“”+entry.url+“”;
结果+=“删除”;
结果+=”;
$(“#表”)。追加(结果);
}

如果检查生成的此按钮,它可能具有以下属性:
onClick=“deleteEntry([object object])

我想你想要的是:

result += "<td><button class=\"btn\" onClick=\"deleteEntry(" + entry.id + ")\">Delete</button></td>";
result+=“删除”;
我猜你在某处有一个列表变量“entries”。
在“删除”功能中,您可以找到带有输入Id的单击条目。

如果您检查此按钮,则生成的按钮可能具有以下属性:
onClick=“deleteEntry([object object])

我想你想要的是:

result += "<td><button class=\"btn\" onClick=\"deleteEntry(" + entry.id + ")\">Delete</button></td>";
result+=“删除”;
我猜你在某处有一个列表变量“entries”。
在delete函数中,您可以找到带有输入Id的单击条目。

您可以将按钮创建为jQuery对象,并使用
on
方法收听
单击事件。然后,当附加事件侦听器时,将按钮像函数中的其他元素一样附加到行中

检查下面的代码片段以查看其实际操作

//伪条目。
变量项={
id:0,
标题:"测试",,
网址:'http://url.com'
}
//你的AJAX电话。
函数deleteEntry(条目){
控制台日志(条目);
}
函数加法器表(条目){
变量$id=$(''+entry.id+'');
变量$title=$(''+entry.title+'');
var$url=$(''+entry.url+'');
var$button=$('Delete');
变量$buttonWrap=$('');
变量$row=$('');
//将“单击”事件侦听器添加到按钮。
$button.on('click',函数(事件){
删除条目(条目);
});
$buttonWrap.append($button)
$row.append($id、$title、$url、$buttonWrap);
$('#table')。追加($row);
}
补遗表(条目)

您可以将按钮创建为jQuery对象,并使用
on
方法收听
单击事件。然后,当附加事件侦听器时,将按钮像函数中的其他元素一样附加到行中

检查下面的代码片段以查看其实际操作

//伪条目。
变量项={
id:0,
标题:"测试",,
网址:'http://url.com'
}
//你的AJAX电话。
函数deleteEntry(条目){
控制台日志(条目);
}
函数加法器表(条目){
变量$id=$(''+entry.id+'');
变量$title=$(''+entry.title+'');
var$url=$(''+entry.url+'');
var$button=$('Delete');
变量$buttonWrap=$('');
变量$row=$('');
//将“单击”事件侦听器添加到按钮。
$button.on('click',函数(事件){
删除条目(条目);
});
$buttonWrap.append($button)
$row.append($id、$title、$url、$buttonWrap);
$('#table')。追加($row);
}
补遗表(条目)


请添加更多代码,您在哪里调用了此函数。请添加更多代码,您在哪里调用了此函数。entry是一个JSON对象,我想传递整个对象。deleteEntry函数是对rest服务器的ajax调用,用于从MySQL数据库中删除它。entry是一个JSON对象,我想传递整个对象。deleteEntry函数是对rest服务器的ajax调用,用于将其从MySQL数据库中删除。