javascript - 动态二维数组,JavaScript 和 Razor 语法错误

标签 javascript asp.net-mvc-4 razor

我听说你不能在 JavaScript 中使用 razor,但我不确定这是否属实,因为它接受了我代码的第一行,但提示其余的代码。我的模型中有一个列表,我正在尝试获取 JavaScript 中一个元素的集合

  function CollectExt() {
            var numberOfLines = '@Model.NumberOfLines';
            for (var i = 0; i < numberOfLines; i++) {
                var extCollection = {(i+1): '@Model.PhoneDisplay[i].dnorpattern' };
            }

        }

我想声明一个数组并根据我拥有的行数填充它。

编辑 我刚刚尝试过这个,但它没有看到 for 循环内的“i”

 function CollectExt() {
            var numberOfLines = '@Model.NumberOfLines';
            var collection = [];
            for (var i = 0; i < numberOfLines; i++) {
                numberOfLines.push('@Model.PhoneDisplay[i].dnorpattern');
            }
        }

最佳答案

Javascript 无法运行 C# 代码。您的循环需要位于 Razor 中。但在这种情况下,您甚至不需要循环。

function CollectExt() {
    var stuff = '@string.Join(",", Model.PhoneDisplay.Select(p => p.dnorpattern))';
    var collection = stuff.split(",");
}

关于javascript - 动态二维数组,JavaScript 和 Razor 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18082077/

相关文章:

asp.net-mvc - 在 Nopcommerce 中创建插件时出错

razor - 捆绑脚本未渲染

asp.net-mvc - ASP.NET MVC EditorTemplate 子文件夹

javascript - 如何通过递归获取使用 Promise?

javascript - 组合框过滤后执行回调gridview

JavaScript 二叉搜索树中序遍历返回未定义作为答案的一部分

asp.net-mvc - mvc Controller 中 JsonResult 的最大大小是多少

javascript - 如何使用 MVC4 Razor 在字符串中使用 @class

Javascript 函数变量范围直通地理定位

javascript - 在饼图中自定义工具提示文本