0
我有一個簡單的形式,這裏的jsfiddle:http://jsfiddle.net/atma88/6zx415bo/JavaScript的鏈路接收未捕獲引用錯誤
的問題是,它不會刪除它增加了記錄。
我調用添加列表項的JavaScript deleteRecord這樣的:
function showRecords() {
results.innerHTML = '';
db.transaction(function(tx) {
tx.executeSql(selectAllStatement, [], function(tx, result) {
dataset = result.rows;
for (var i = 0, item = null; i < dataset.length; i++) {
item = dataset.item(i);
results.innerHTML += '<li>' + item['lastName'] + ' , ' + item['firstName'] + ' <a href="#" onclick="loadRecord(' + i + ')">edit</a> ' + '<a href="#" onclick="deleteRecord(' + item['id'] + ');">delete</a></li>';
}
});
});
}
我刪除記錄功能如下:
function deleteRecord(id) {
alert('it deleted');
db.transaction(function(tx) {
tx.executeSql(deleteStatement, [id], showRecords, onError);
});
resetForm();
}
當我點擊刪除鏈接我得到的JavaScript錯誤:Uncaught ReferenceError:deleteRecord沒有定義
將jsfiddle菜單從'onLoad'更改爲'No Wrap'選項之一。 – Barmar
當你使用'onLoad'時,一切都在一個函數內,'onclick'屬性在全局範圍內運行。 – Barmar
但是如果你一開始不使用'onclick'屬性會更好。用'.on()'綁定使用jQuery委託的事件處理程序。 – Barmar