2016-06-07 17 views
0

我有與幾個值和顏色數組的值的textearea極性區域圖表中繪製:輸入值轉換爲JavaScript數組和填充圖表

<textarea style="display:none" id="span_canva_<?= $vino['id'] ?>" > 
    <?= $vino['vino_wineid'] ?> 
</textarea> 
{value: '20', color: '#4D5360'}, 
{value: '25', color: '#24b34b'}, 
{value: '14', color: '#7b3adc'}, 
{value: '68', color: '#8eb580'}, 
{value: '69', color: '#b58093'}, 
{value: '61', color: '#44454f'}, 
{value: '38', color: '#f65a7b'}, 
{value: '35', color: '#4e5d3e'}, 
{value: '41', color: '#cd2c7c'}, 
{value: '39', color: '#F7464A'}, 
{value: '33', color: '#46BFBD'}, 
{value: '62', color: '#8eb580'}, 
{value: '45', color: '#44454f'}, 
{value: '36', color: '#f7b10b'}, 
{value: '41', color: '#92a6ba'}, 
{value: '25', color: '#f65a7b'}, 
{value: '45', color: '#4e5d3e'}, 
{value: '35', color: '#F7464A'}, 
{value: '45', color: '#46BFBD'}, 
{value: '10', color: '#FDB45C'}, 
{value: '50', color: '#949FB1'}, 
{value: '40', color: '#4D5360'}, 
{value: '40', color: '#24b34b'} 

然後我需要獲得textarea.text()並繪製成canvas(Chart.js)。正如你所看到的格式是正確的,只需要關閉.text()[]。所以我做到了:

var id_match = jQuery(this).attr('id');  
var vino_wineid = "[" + jQuery("#span_" + id_match).text() + "]"; 
contendor_chart_popup = new Chart(chart_popup).PolarArea(vino_wineid); 

一切似乎完美,但沒有畫在畫布,因爲對象類型仍然不正確。

回答

0
var vino_wineid = eval("[" + jQuery("#span_" + id_match).text() + "]"); 

中的eval()是缺失的功能的類型對象以填充圖形。 對不起,但我認爲是很好分享=)

+0

這裏有關於[eval](http://stackoverflow.com/questions/86513/why-is-using-the-javascript-eval-function -a-壞主意)。 –