这个功能的正确语法形式是什么 -- Javascript

what is the correct syntax form for this to function -- Javascript

在下面的代码行中,我尝试在 javascript 中的 html 标记内添加一个函数:

nuevo = "<p class='item'>" + res.tarea + "<button onclick = '" + return EliminarTareas(database) + (" + res.tarea +");'>" + "Eliminar" + "</button></p>";
$('#listatareas').append(nuevo);
function EliminarTareas(id, base) {
     base.transaction(function(tx) {
        tx.executeSql("DELETE tarea FROM Tareas WHERE tarea=?", [id], function () {
        });
     });
 }

主要问题出在这部分+return EliminarTareas(" + database + ", " + res.tarea +");'>"。它丢弃了第二个参数,因为您关闭了括号 ),并且它也有引用问题。 应该是这样的+" return EliminarTareas(" + database + ", " + res.tarea + ");'>"

不过,我相信用 .data 解决这个任务会很有效,而且它可能会提供更好的结构。下面是我的版本和你的一些代码(DEMO:https://jsfiddle.net/9q4hLs3a/):

var nuevo = $("<p class='item'><button data-var1='" + database + "' data-var2='" + res.tarea + "'>Eliminar</button></p>");

$('#listatareas').append(nuevo);


$(document).ready(function(){
    $(document).on('click', '#listatareas button', function(){

    var var1 = $(this).data('var1');
    var var2 = $(this).data('var2');
    EliminarTareas(var1 , var2 )
});



function EliminarTareas(id, base){

    base.transaction(function(tx){

        tx.executeSql("DELETE tarea FROM Tareas WHERE tarea=?", [id], function (){

    });
}

我想这就是你想要的

"<p class='item'>"+ res.tarea +"<button onclick = 'EliminarTareas("+database+","+res.tarea +")'>Eliminar</button></p>";