我听说你不能在JavaScript中使用剃须刀,但我不确定这是否属实,因为它接受了我的代码的第一行但却抱怨其余部分。我的模型中有一个列表,我正在尝试在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');
}
}
答案 0 :(得分:1)
Javascript无法运行C#代码。你的循环需要在Razor中。但在这种情况下你甚至不需要循环。
function CollectExt() {
var stuff = '@string.Join(",", Model.PhoneDisplay.Select(p => p.dnorpattern))';
var collection = stuff.split(",");
}