【问题标题】:Locale language for google charts not working谷歌图表的语言环境不起作用
【发布时间】:2018-03-25 16:32:07
【问题描述】:

在我的页面中,我按照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?

【问题讨论】:

    标签: javascript asp.net asp.net-core


    【解决方案1】:

    我使用 Html.Raw() 解决了编码问题。如果稍后将这些存储在 db 中,则不推荐,但可以按我的意图显示数据:

     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)',
    
        };
    

    【讨论】:

      猜你喜欢
      • 2014-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-08
      • 2018-09-22
      相关资源
      最近更新 更多