我有一个我想要迭代的集合,它保存在一个C#变量中。是否可以在HTML内的C#代码中使用Javascript变量?
我想在Javascript中使用for循环来遍历它;这可能吗?
例如:
@{ int questionCount = 0;
foreach(var q in Model.Questions){
questionCount++;
}
...做一些HTML ...
<script type="text/javascript">
jQuery(function() {
for (var i=1;i<[email protected];i++)
{
var d1 = @Model.Questions[i].Answers.Where(m => m.Answer == 1).Count();
<-- this is where it breaks -->
}
});
我得到的错误说,指数超出范围。我想这意味着一旦我将@符号放入行中,它就不会理解'我'。我怎样才能正确分隔字符串使用变量我(从Javascript)迭代我的C#集合?
正如我想的,感谢您的确认。因为我*可以*要求类似var d1 = @ Model.Questions [0] .Answers.Where(m => m.Answer == 1).Count(); (即将索引设置为零),并且由于我知道该索引的值(来自循环内),是否有一种方法可以动态构造这条单线? – user1711233
您可以创建一些代码在服务器上运行,以便在字符串中生成JavaScript(即,将在客户端上运行的代码),然后在.CSHTML中输出该字符串。 –
这听起来很有希望。我对这个东西有点新手,会不会是生成Javascript的C#代码? – user1711233