2012-03-15 46 views
0

當我的頁面加載時,我創建一個數據庫與字段和數據已成功加載到所有字段。從頁面加載javascript檢查值從HTML5 webstorage表的字段

在我的webstorage數據庫中,它們是一列favourite,它的類型是整數。當我的數據庫填充所有字段的數據時,favourite字段是帶有0值的字段。

<img id="fav_image" onclick="addFav()" src="icons/star_fav_empty_icon.png" />

enter image description here

當我點擊這個圖片,它的值從0變爲1在favourite

這事以後,我在它的代碼是我的頁面只顯示一個按鈕數據庫中的字段。

正如你在ID看到3favourite值在ABC表

enter image description here

改變圖像值之後,它的功能也發生了變化......
enter image description here

...我這樣做:

function addFav() 
    { 
    var pageId = a;  
     db.transaction(function(tx) { 
      tx.executeSql(updateFav,[1,pageId], showEmpty , onError); 
     }); 
    document.getElementById('fav_image').src="icons/star_fav_icon_fill.png"; 
    document.getElementById('fav_image').setAttribute("onClick", "javascript: 
    removeFav();"); 
    } 

function removeFav() 
    { 
    var pageId = a;  
     db.transaction(function(tx) { 
      tx.executeSql(updateFav,[0,pageId], showEmpty , onError); 
     }); 
    document.getElementById('fav_image').src="icons/star_fav_empty_icon.png"; 
    document.getElementById('fav_image').setAttribute("onClick", "javascript: addFav();"  
    ); 
    } 

據我所知,這裏一切正常。

我需要檢查時,頁面加載favourite值並顯示圖像和onClick功能根據favourite值:

  • 如果該值爲0,則表明與addFav()功能
  • 空的明星形象
  • 如果該值爲1,則顯示填充明星形象與RemoveFav()功能

我從favourite值使用此功能的數據庫:

function checkfav() 
{ 
    var cID = a; 
    var b; 
    var getFavBool = 0; 
    //fav.innerHTML = ''; 
    db.transaction(function(tx) { 
      tx.executeSql(selectfavStatement, [cID], function(tx, result) { 
      dataset = result.rows.item(0); 
      getFavBool = dataset['favourite'];        
       b = parseInt(getFavBool,10); 
       if(b==1) 
       { 
       fav.innerHTML = b; 
       return b; 
       } 
       else 
       { 
       fav.innerHTML = b; 
       return b; 
       } 

      }); 
     }); 
} 

我希望你得到什麼,我想說的想法...

+0

我自己解決這個問題...如果你需要代碼然後在這裏回覆我會在這裏寫下來... – 2012-03-25 08:22:13

回答

0

我只加了checkfav()函數,其代碼爲:

function checkfav() 
{ 
    //this is a ID to which i want to get the result. 
    var cID = a;  
    db.transaction(function(tx) { 
    tx.executeSql("selectfavStatement", [cID], function (tx, result) { 
    var len = result.rows.length, i; 
    dataset = result.rows; 
    for (var i = 0, item = null; i < len; i++){ 
    item = dataset.item(i); 
     var favID = item['favourite']; 

     //now this line is only to show result on HTML page. (optional) 
     document.getElementById('fav').innerHTML = item['favourite']; 
     if(favID==1) 
     { 
      document.getElementById('fav_image').src="icons/star_fav_icon_fill.png"; 
      document.getElementById('fav_image').setAttribute("onClick", "javascript: addFav();"   );  
     } 
     else if(favID==0) 
     { 
      document.getElementById('fav_image').src="icons/star_fav_empty_icon.png"; 
      document.getElementById('fav_image').setAttribute("onClick", "javascript: removeFav();"); 
     } 
    } 
}); 
}); 

} 
相關問題