如何验证我的db sqlite中存在的数据

时间:2014-02-11 19:29:57

标签: sqlite cordova

如果我的数据库本地存储中存在“用户名”(示例),我正在phonegap中构建应用并尝试验证我的状况,但我没有成功。

if(getUser(document.getElementById('username').value)){
...
} else{
...//always keeping going here
}

function getUser(username) {
    db.transaction(function(tx) {
        try {
        tx.executeSql('SELECT id FROM user where username = ?', [username], function(tx, results) {
            if(results.rows.length > 0) {
            return true);
                } else { return false; }
            });
        } catch(e){}
    });
}

1 个答案:

答案 0 :(得分:2)

不要忘记:executeSql是一个异步请求。 意味着您的函数getUser在从查询中获得结果之前结束。 并且您没有返回值,因此您的函数返回false

<script>
function test() {}

if (test())
   console.log('true');
else  
   console.log('false')
</script>