2017-10-13 30 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)', 

    }; 
相关问题