我正在尝试将对象传递给 onclick 事件中的函数。如果我运行下面的代码,我会得到Uncaught SyntaxError: Unexpected indentifier
. 如果我取消注释该JSON.stringify
行,并使用taskAsJson
代替task
,我会得到同样的错误。
$.each(tasks, function (index, task) {
//var taskAsJson = JSON.stringify(task);
items.push('<li><a href="#" onclick="showTask(' + task + ');">' + task.Description + '</a></li>');
});
但是,如果我硬编码一个值,比如 5,它会起作用,并且 5 会传递给函数。
$.each(tasks, function (index, task) {
items.push('<li><a href="#" onclick="showTask(' + 5 + ');">' + task.Description + '</a></li>');
});
当我尝试传递我的对象时,为什么会出现该错误?我需要改变什么才能通过task
或taskAsJson
?
注意:items 是一个用于更新 div 和 listview 的数组:
$('#appTasks').append(items).listview('refresh');