2015-10-06 36 views
-1

樣本串輸出jQuery的 - 基於計數

[{v:5, f:'Week 1'}, {v:10, f:'Week 2'},{v:15, f:'Week 3'},{v:20, f:'Week 4'},{v:25, f:'Week 5'}] 

片段

function weekAxis(){ 

var ticks = ''; 
var week_count = <?php echo $chart ?>; //count number of weeks 

    for(i=0; i<=week_count; i++){ 

     var tick_str[] = '{v:'+week_count, f:'Week' +week_count}'; 
    } 
return ticks; 

} 
環路字符串數組

所需的輸出基於周計數

如果week_count = 5

var ticks = [{v:5, f:'Week 1'}, {v:10, f:'Week 2'},{v:15, f:'Week 3'},{v:20, f:'Week 4'},{v:25, f:'Week 5'}] 

如果week_count = 4

var ticks = [{v:4, f:'Week 1'}, {v:8, f:'Week 2'},{v:12, f:'Week 3'},{v:16, f:'Week 4'}] 

如果week_count = 6

var ticks = [{v:6, f:'Week 1'}, {v:12, f:'Week 2'},{v:18, f:'Week 3'}, {v:24, f:'Week 4'}, {v:30, f:'Week 5'}, {v:36, f:'Week 6'}] 

如所觀察到的v值乘以計數本身和將循環,直到它達到周計數。同樣,Week文本將增加計數器值。

如何通過基於周計數通過以上字符串?

+0

您已經標記的問題'jquery',但我沒有看到這個問題涉及到jQuery的所有東西。我*做*看看我認爲是PHP代碼;你想在PHP中做到這一點? –

回答

0

試試這個:你可以初始化一個數組並將地圖推入它。在for循環中,用count和i變量創建映射,如下所示。

function weekAxis(){ 
 
    
 
    var ticks = new Array(); 
 
    var week_count = 4; //count number of weeks 
 
    
 
     for(i=1; i<=week_count; i++){ 
 
      var tick_str = {}; 
 
      tick_str['v'] = (week_count * i); 
 
      tick_str['f'] = 'Week ' + i ; 
 
      ticks.push(tick_str); 
 
     } 
 
    return ticks; 
 
    
 
    } 
 

 
alert(JSON.stringify(weekAxis()));

+0

它說'SyntaxError:missing;在聲明之前var tick_str ['v'] = week_count * i;' – Slimshadddyyy

+0

對不起,我已經把'var'多次,現在更正了。請嘗試。 –

+0

該片段按預期工作。 – Slimshadddyyy

0

這應該做的伎倆

function weekAxis(){ 
    var ticks = '',week_count = 5,tick_str = []; 
    for(i=0; i<week_count; i++){ 
     var ex = { 
      v:week_count*(i+1), 
      f:'Week'+week_count 
     }; 
     tick_str.push(ex); 
    } 
    return JSON.stringify(tick_str); 
}