我有两个功能:
function removePreorder(id) {
db.transaction(function(tx) {
tx.executeSql("DELETE FROM preorder WHERE id= ?", [id], removeRow(id));
console.log ('ok');
});
}
function removeRow(id) {
$( "#"+id+"" ).remove();
}
removePreorder()
上点击事件绑定的功能href
。
function renderResults(tx,results){ var len = results.rows.length;
var preorder = [];
for (var i=0; i<len; i++){
preorder.push( "<tr id ='"+results.rows.item(i).id+"'><td>"+results.rows.item(i).name+"</td><td>"+results.rows.item(i).tel+"</td><td>"+results.rows.item(i).email+"</td><td>"+results.rows.item(i).size+"</td><td><a href='#'onclick='removePreorder("+results.rows.item(i).id+")' class='button [tiny small success alert]'>remove</a></td></tr>" );
}
在Chrome中的Mac上,所有这些功能都能正常工作。
removePreorder()
从WebSQL表中删除行,removeRow()
从页面中删除DOM对象。
在iPad上,函数removePreorder()
不会从WebSQL表中删除行,但removeRow()
会从页面中删除DOM对象。
有什么问题?
答案 0 :(得分:0)
问题
tx.executeSql('CREATE TABLE IF NOT EXISTS preorder (id INTEGER AUTO_INCREMENT, name TEXT, tel TEXT, email TEXT, art TEXT, size TEXT, PRIMARY KEY (id))');
这是正确的
tx.executeSql('CREATE TABLE IF NOT EXISTS "preorder" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE , "name" TEXT , "tel" TEXT, "email" TEXT, "art" TEXT, "size" TEXT);');
ipad上的AUTOINCREMENT字段返回undefined