Jquery If语句不起作用

Jquery If语句不起作用,jquery,sql,Jquery,Sql,好的,我有这个函数。它应该做什么?在sql中查找pid,如果找到,跳过函数并继续,但我认为我的if语句工作不正常 function getblogpost(div) { var date = $(div).find('.time').text(); var user = $(div).find('.user').text(); var title = $(div).find('.title').text(); var textbody = $(div).f

好的,我有这个函数。它应该做什么?在sql中查找pid,如果找到,跳过函数并继续,但我认为我的if语句工作不正常

function getblogpost(div) {    
    var date = $(div).find('.time').text();
    var user = $(div).find('.user').text();
    var title = $(div).find('.title').text();
    var textbody = $(div).find('.bodytext').text();
    var postid = $(div).find('.pid').text();

    var q = tx.executeSql("SELECT * FROM blogpost WHERE postid=" + postid, 
                          [], function(transaction, result) {
                            var sqlpostid = result.rows.item(i)['postid'];
            }, null);
    if(result == NULL) {
        return;
    }
    else {
    dbsql.transaction(
    function(transaction) {
        transaction.executeSql(
        'INSERT INTO blogpost (postid, date, user, title, textbody) 
                    VALUES (?, ?, ?, ?, ?);', 
        [postid, date, user, title, textbody], 
        function() { },
        errorHandler
        );
    }
    );

    return false;
    }
}
这不管用吗

谢谢

编辑: 这个怎么样

function getblogpost(div) {   
    var postid = $(div).find('.pid').text();
    var q = tx.executeSql("SELECT * FROM blogpost WHERE postid=" + postid, [], function(transaction));
    if(!q) {
        return false;
    }

    var date = $(div).find('.time').text();
    var user = $(div).find('.user').text();
    var title = $(div).find('.title').text();
    var textbody = $(div).find('.bodytext').text();

        dbsql.transaction(
            function(transaction) {
                transaction.executeSql(
                'INSERT INTO blogpost (postid, date, user, title, textbody) VALUES (?, ?, ?, ?, ?);', 
                [postid, date, user, title, textbody], 
                function() { }, 
                errorHandler
                );
            }
        );      
    return false;       
}

我在这里要做的是找出postid是否在数据库中,如果是,跳过函数并返回。

那么您需要定义
NULL
类似的地方

var NULL = null;
没有这一点,
NULL
在ECMA-/Javascript中是未定义的

不管怎样,你为什么要这么做
executeSql()
将两个
回调作为参数。第二种是针对
错误案例
,这可能更适合

t.executeSql('SELECT Foobar FROM blogpost', [], function (t, r) {
  // r.rows[1].Something
}, function (t, e) {
  console.log(e.message);
});     

例如。

您使用jQuery构建SQL?在执行死刑之前要经过什么样的卫生条件?或者是更新了本地存储还是什么?@alex:@jAndy啊是的,我想一定是这样的。谢谢。@alex我是说jAndy的意思……)我不认为我在测试if语句的正确变量,但我会继续尝试。谢谢汉克,詹迪,现在我可以删除我的答案了+1.