【问题标题】:How to include ViewBag value into javascript in view of controller如何在控制器视图中将 ViewBag 值包含到 javascript 中
【发布时间】:2014-09-04 12:52:09
【问题描述】:

我在 ASP.NET-MVC4 应用程序中有一个控制器视图,我在其中放置了一个用于绘图目的的 javascript。

我想将ViewBag 的值放入该脚本。但它不起作用。

google.load("visualization", "1", { packages: ["corechart"] });
google.setOnLoadCallback(drawChart);

function drawChart() {
    var number =  @(Model.Last().Energie_E_Maschine_kwh).ToString("F2", CultureInfo.InvariantCulture);  

    var data = google.visualization.arrayToDataTable([
      ['Task', 'Hours per Day'],
      ['Work', number],
      ['Eat', 2],
      ['Commute', 2],
      ['Watch TV', 2],
      ['Sleep', 7]
    ]);

    var options = {
        title: 'My Daily Activities'
    };

    var chart = new google.visualization.PieChart(document.getElementById('piechart'));

    chart.draw(data, options);
}

这里ViewBag.test 是我想从控制器访问的值。当我在脚本之外打印或使用ViewBag 的值时,它工作正常。

从德语到标​​准的数字转换:

['Work', @(Model.Last().Energie_E_Maschine_kwh).toString("G2", CultureInfo.InvariantCulture)],

【问题讨论】:

  • 谢谢你,斯蒂芬成功了
  • @StephenMuecke 实际上,如果我输入一个常量值,例如 14,那么脚本会选择该值。但在我的情况下,我正在从 sql server 访问他们的 ViewBag 值,并且我在德国数字系统中工作,其中逗号被替换而不是点。我想由于这个问题它没有工作。由于逗号,此脚本不会绘制。你知道如何用点转换逗号吗?
  • @StephenMuecke 如果放ViewBag.test= 14; 它可以工作,但如果我从 sql 访问值它不会
  • 尝试格式化数字,例如 ViewBag.test = yourNumericValue.ToString("G2", CultureInfo.InvariantCulture) 使 100,00 变为 100.00
  • @StephenMuecke 我最后对数字格式的问题进行了更改。但没有工作

标签: javascript html asp.net-mvc-4 viewbag


【解决方案1】:

请注明:var number = @(Model.Last().Energie_E_Maschine_kwh).ToString("F2", CultureInfo.InvariantCulture);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-06
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-10
    相关资源
    最近更新 更多