2012-03-15 45 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();"); 
     } 
    } 
}); 
}); 

} 
相关问题