Javascript Razor语法:特定索引中的输出字符串数组
我有一个MVC类向我输出一个用户等级列表和用户数量:Javascript Razor语法:特定索引中的输出字符串数组,javascript,arrays,asp.net-mvc,razor,Javascript,Arrays,Asp.net Mvc,Razor,我有一个MVC类向我输出一个用户等级列表和用户数量: public class GradeNumModel { public int Grade; public int Count; } A由一系列主题名称组成: 公共类成绩表模型 { 公共字符串[]名称=新字符串[7] public GradeListModel() { //Ustawienie pierwszych indeksów na zero pomaga uniknąć problem
public class GradeNumModel
{
public int Grade;
public int Count;
}
A由一系列主题名称组成:
公共类成绩表模型
{
公共字符串[]名称=新字符串[7]
public GradeListModel()
{
//Ustawienie pierwszych indeksów na zero pomaga uniknąć problemów przy dodawaniu wartości
Names[0] = "";
Names[1] = "Niedostateczny";
Names[2] = "Dopuszczający";
Names[3] = "Dostateczny";
Names[4] = "Dobry";
Names[5] = "Bardzo Dobry";
Names[6] = "Celujący";
}
}
现在在我看来,我有一个名为ChartList的javascript库来创建图表,我希望将这些数据应用到图表中
下面是我希望如何将模型数据插入JS
var data = {
labels: [
@foreach (var Gr in Model.AllGradesNum)
{
string.Join(Model.GradeList.Names.ElementAt(@Gr.Grade), ", ");
}
],
series: [
@foreach (var Gr in Model.AllGradesNum)
{
string.Join(Gr.Count.ToString(), "0, ");
}
]
};
问题是这样的配置根本没有输出值。
即使尝试打印普通div中的值也不会弹出任何内容
控制台也不会报告错误,检查源代码时会显示两个空阵列:
var data = {
labels: [
],
series: [
]
};
这里可能有什么问题,我如何解决
**编辑:**
输出如下所示的值:
@foreach (var Gr in Model.AllGradesNum)
{
<p>@Gr.Count + @Gr.Grade</p>
}
无问题工作并显示正确的数据您的代码有两个问题 1.您正在foreach中计算表达式,但没有将其打印为HTML。 2.join的语法不正确。join使用第一个参数作为分隔符,第二个参数作为数组,您已将其交换。 下面的代码可能适合您
var data = {
labels: [
@foreach (var Gr in Model.AllGradesNum)
{
string t1 = string.Join(", ",Model.GradeList.Names.ElementAt(@Gr.Grade));
@t1
}
],
series: [
@foreach (var Gr in Model.AllGradesNum)
{
string t2 = string.Join("0, ",Gr.Count.ToString());
@t2
}
]
};
是的,它工作了!还有一件小事。我应该如何输出要以双引号显示的字符串?