我尝试过Stack Overflow的多个解决方案,但仍有问题从Javascript文件中的函数访问MVC ViewBag。
在视图中:
<input type="text" id="myHiddenVar" />
<script>
var array = @Html.Raw(Json.Encode(@ViewBag.Files));
$( "#myHiddenVar" ).data( array );
console.log($("#myHiddenVar").data());
}
</script>
这符合我的预期,并将我期望/需要的内容发送到控制台。 对象{0:file1“,1:”file2“,2:”file3“}
在jsHelper.js文件中:
function getFiles() {
var test = $("#myHiddenVar").data();
console.log(test);
return test;
}
这只是在调用函数时(从jsHelper.js中的另一个函数)将Object {}发送到控制台。
任何人都可以告诉我我缺少的东西吗?
答案 0 :(得分:0)
您可以这样做:
var array2 = @Html.Raw(Json.Encode(@ViewBag.Files));
var array = JSON.parse(array2);