2010-08-10 5 views
1

그래이 기능이 있습니다. 그것은 SQL에서 pid를 찾고 그것을 수행해야하고, 함수를 건너 뛰고 계속 이동했다고 판단되면해야하지만, if if statment is right work.명세서가 작동하지 않는 경우

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; 
    } 
} 

이것은 작동하지 않아야합니까?

감사

편집

:이 약 무슨 일이.

내가 여기서하려고하는 것은 postid가 데이터베이스에 있는지 여부를 알아내는 것입니다. 그렇다면 함수를 건너 뛰고 돌아옵니다.

+2

jQuery로 SQL을 빌드 하시겠습니까? 처형되기 전에 어떤 종류의 위생이 필요합니까? 또는 로컬 저장소 또는 다른 것을 업데이트합니까? – alex

+0

@alex 뭐가 잘못 되었나요? – Reigel

+0

@alex : http://dev.w3.org/html5/webdatabase/ – jAndy

답변

2

그럼 당신은없이

var NULL = null; 

, NULL는 ECMA-/ 자바 스크립트에서 정의되지 않은 것처럼 NULL 곳을 정의해야합니다.

어쨌든 왜 그랬습니까? executeSql()은 매개 변수로 두 개의 Callbacks을 사용합니다. 두 번째 것은 error case이고 이는 아마도 더 잘 맞을 것입니다.

예를 들어.

+0

고마워요, 앤디, 이제 제 대답을 지울 수 있습니다. +1. – paxdiablo

관련 문제