2017-10-13 92 views
0

在我的頁面中,我按照in the docs所述加載圖表。這是在asp.net中呈現輸出的視圖。該視圖檢查是否填充了名爲Avstemning的類,然後將該類中的字符串作爲數據放入圖表中。但是,如果我使用挪威字母,如ø,æ,å。即使我指定要使用的語言選項,圖表數據也無法讀取它。這裏發生了什麼?用於谷歌圖表的語言環境語言不起作用

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> 

@if (Model.Avstemning != null) 
{ 

<script type="text/javascript"> 
    google.charts 
    .load('current', { 'packages': ['corechart'], 'language':'no' }); 
    google.charts.setOnLoadCallback(drawChart); 

    function drawChart() { 

    var data = google.visualization.arrayToDataTable([ 
     ['Avstemning', '@Model.Avstemning.Tittel'], 
     ['@Model.Avstemning.Option1', @Model.Avstemning.One], 
     ['@Model.Avstemning.Option2', @Model.Avstemning.Two], 
     ['@Model.Avstemning.Option3', @Model.Avstemning.Three] 

    ]); 

    var options = { 
     title: '@Model.Avstemning.Tittel'}; 
    var chart = new 
    google.visualization.PieChart(document.getElementById('piechart')); 

    chart.draw(data, options); 
    } 
</script> 
} 

如果我更改數據變量採取與它的工作原理挪威字母硬編碼的選項。但這並不完全理想。有關如何解決這個問題的任何想法?從控制器注入JavaScript?

回答

0

我通過使用Html.Raw()解決了編碼問題。不建議,如果這些稍後將被存儲在分貝,但用於顯示數據,我打算:

var data = google.visualization.arrayToDataTable([ 
     ['Avstemning', '@Html.Raw(Model.Avstemning.Tittel)'], 
     ['@Html.Raw(Model.Avstemning.Option1)', @Model.Avstemning.One], 
     ['@Html.Raw(Model.Avstemning.Option2)', @Model.Avstemning.Two], 
     ['@Html.Raw(Model.Avstemning.Option3)', @Model.Avstemning.Three] 

    ]); 

    var options = { 
     title: '@Html.Raw(Model.Avstemning.Tittel)', 

    };