【发布时间】: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