Javascript 未捕获的TypeError:无法读取未定义的web SQL的属性“length”
我使用web SQL创建了一个数据库,其中包含两列用户名和密码。要登录应用程序,我需要检查用户是否存在。所以我写了这个函数:Javascript 未捕获的TypeError:无法读取未定义的web SQL的属性“length”,javascript,web,Javascript,Web,我使用web SQL创建了一个数据库,其中包含两列用户名和密码。要登录应用程序,我需要检查用户是否存在。所以我写了这个函数: html5rocks.webdb.Search = function(user,password){ var db = html5rocks.webdb.db; db.transaction(function(tx){ tx.executeSql("SELECT * FROM users WHERE username=? A
html5rocks.webdb.Search = function(user,password){
var db = html5rocks.webdb.db;
db.transaction(function(tx){
tx.executeSql("SELECT * FROM users WHERE username=? AND password=?",
[username,password],
function(rs){
var verif =false;
for(var i=0; i<rs.rows.length; i++)
if((rs.rows.item(i).username == username) && (rs.rows.item(i).password == password))
verif =true;
if(verif == true)
{
alert("logged in");
self.location.href = "login.html";
}
else
alert("access denied");
},
html5rocks.webdb.onSuccess,
html5rocks.webdb.onError)
});
}
但是,当我运行应用程序时,会出现以下错误:
未捕获的TypeError:无法读取未定义的属性“length”
你们谁能告诉我这个密码有什么问题吗?
感谢它所说的:rs.rows未定义,因此无法读取长度属性。我相信您的sql查询没有返回任何用户说明rs.rows未定义的原因。在计算长度之前,最好检查对象是否为null或未定义,这样可以避免此类错误