2012-02-01 72 views
0

我正在使用YUI進度條,但我遇到了一些問題。javascript函數調用問題

通常改變進度條的價值,應當使用: progressBar.set('value', 10000); 哪裏value是我試圖改變,10000是什麼,我想改變它的東西。在控制檯,這返回true

這工作正常。但我想傳遞一個變量的值: progressBar.set('value', total); 但這不是爲我工作和控制檯報告false

下面是代碼:

此創建和呈現的吧:

var progressBar = new YAHOO.widget.ProgressBar({ 
       direction: "ttd", 
       height: "75px", 
       width: "750px", 
       anim: true, 
       minValue: 0, 
       maxValue: 85000, 
       value: 35000 
      }).render("bar"); 

      var anim = progressBar.get('anim'); 
      anim.duration = 3; 
      anim.method = YAHOO.util.Easing.bounceBoth; 

,這是一個Ajax請求得到,我想在酒吧的值設置爲:

var itemTotal, mITotal, donationTotal, total; 

      function showHint() 
      { 
      var xmlhttp; 
      if (window.XMLHttpRequest) 
       {// code for IE7+, Firefox, Chrome, Opera, Safari 
       xmlhttp=new XMLHttpRequest(); 
       } 
      else 
       {// code for IE6, IE5 
       xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
      xmlhttp.onreadystatechange=function() 
       { 
       if (xmlhttp.readyState==4 && xmlhttp.status==200) 
       { 
       var myString = new String(xmlhttp.responseText); 
       var myArray = myString.split(','); 
       itemTotal = myArray[0]; 
       mITotal = myArray[1]; 
       donationTotal = myArray[2]; 
       total = myArray[3]; 

       progressBar.set('value', total); 
       alert(total); 
       } 
       } 
      xmlhttp.open("GET","goal_ajax.php",true); 
      xmlhttp.send(); 
      } 

有什麼想法?

+0

是的,我心中已經特里普爾檢查之類的東西 – lampwins 2012-02-01 03:15:08

+0

把聲明'警報(總數);'在'progressBar'調用之前確保'total'有效。 – 2012-02-01 03:19:11

+0

好的,我提醒了警報,它仍然檢查出好。 – lampwins 2012-02-01 03:20:26

回答

1

此:

   var myArray = myString.split(','); 
       ... 
       total = myArray[3]; 

不設置total10000(數字),但'10000'(字符串)。我敢打賭,如果你想嘗試

   progressBar.set('value', '10000'); 

你會看到同樣的問題。爲了解決這個問題,改變這種:

   total = myArray[3]; 

這樣:

   total = +myArray[3]; 

這將'10000'轉換成10000

(免責聲明:。沒有測試這只是一個猜測,但猜測去,我是非常有信心的話)

+0

謝謝!這就像一個魅力,並感謝您解釋它,我真正熟悉的唯一語言是C++,所以數​​據類型轉換對我來說很有意義,但我不知道爲什麼它沒有跨過我的腦海。但是,謝謝! – lampwins 2012-02-01 03:38:58

+0

@JohnA:不客氣! – ruakh 2012-02-01 03:40:55