【发布时间】:2014-03-07 12:35:59
【问题描述】:
我发现了一些与“phonegap 画布签名”相关的帖子,但它们没有帮助。我有一些下拉框、文本框和一个签名字段。我想在 sqlite 数据库中插入这些字段。
我的数据库表创建如下所示:
tx.executeSql("CREATE TABLE IF NOT EXISTS parts(id INTEGER PRIMARY KEY AUTOINCREMENT,nr,productId,description,toolsVerified)");
tx.executeSql("CREATE TABLE IF NOT EXISTS costs(id INTEGER PRIMARY KEY AUTOINCREMENT,nr,date,starttime,endtime,reason,cost)");
tx.executeSql("CREATE TABLE IF NOT EXISTS sign(orderNr unique ,rapport,sign)");
像普通文本一样读取字段值,画布签名字段的下拉菜单就像
kundusSign = $("#mKundusskirt")[0];
kundensUnderSkrift = kundusSign.toDataURL();
插入数据的代码如下:
db
.transaction(function(tx) {
// for parts table
tx
.executeSql(
"insert into parts(nr,productid,description,toolsVerified) values(?,?,?,?)",
[ nr, productId, desc, tool ]);
// for cost table
tx
.executeSql(
"insert into costs(nr,date,starttime,endtime,reason,cost) values (?,?,?,?,?,?)",
[ nr, date, startTime, endTime, reason, cost ]);
// for sign table
signQuery = 'UNION SELECT ' + nr + ", '" + rapport + "','"
+ kundensUnderSkrift + "'";
tx
.executeSql('insert or replace into "sign" SELECT "orderNr","rapport","sign"'
+ signQuery);
});
我包括sign plugin 用于签名。现在我的问题是,当我输入签名字段时,没有插入数据库字段。此外,当我尝试删除符号插入查询并放置符号时,其他两个表(成本和零件)值也不会插入。如果我没有触摸符号字段,则图像的所有值都已成功插入,插入 toDataurl() 格式。
我只在堆栈跟踪中得到了这个错误:
sqlite (23) not authorised.
请给出一些解决方案。
编辑: 我也试过这个:
tx.executeSql("insert into sign(orderNr,sign,rapport)values(?,?,?)",[nr,rapport,kundensUnderSkrift]);
【问题讨论】:
-
也许这个问题对stackoverflow.com/q/17550272/1741542有帮助
标签: javascript android sqlite jquery-mobile cordova