我在Razor视图中添加了像元组列表中的一些数据
List<Tuple<int, int, string>> Downloadlist = new List<Tuple<int, int, string>>();
将项目添加到此列表
Downloadlist.Add(new Tuple<int, int, string>(11, 7, "somedata"));
现在我想访问javascript中的数据数组
<script>
var listofdownloadpages = '@ViewData["DownloadPages"]';
if (listofdownloadpages != null) {
alert(listofdownloadpages.length);
for (var i = 0; i < listofdownloadpages.length; i++) {
alert(listofdownloadpages[i].wishid + ' ' + listofdownloadpages[i].remain);
}
}
else {
alert("not found anything");
}
但是这不能正确地给我这些物品请帮助。
答案 0 :(得分:1)
这将有效
控制器
public ActionResult Test()
{
List<Tuple<int, int, string>> Downloadlist = new List<Tuple<int, int, string>>();
Downloadlist.Add(new Tuple<int, int, string>(11, 7, "somedata"));
ViewData["DownloadPages"] = Downloadlist;
return View();
}
查看&amp; JS
<script>
var listofdownloadpages = @Html.Raw(Json.Encode(@ViewBag.DownloadPages));
if (listofdownloadpages != null) {
alert(listofdownloadpages.length);
for (var i = 0; i < listofdownloadpages.length; i++) {
alert(listofdownloadpages[i].Item1 + ' ' + listofdownloadpages[i].Item2);
}
}
else {
alert("not found anything");
}
</script>