我有一个需要运行的 JavaScript 函数。它需要一些参数。实际参数在我的视图模型的集合中。这个 JavaScript 函数需要被调用的次数与集合中的元素一样多,每次都将集合的元素作为各自的参数。
该函数需要在文档加载时调用。所以,我想我应该把这个函数的调用放在document.ready
. 问题是我不知道如何遍历我的 C# 集合并同时生成 Javascript。你知道我怎么能做到这一点吗?任何帮助将不胜感激。
我有一个需要运行的 JavaScript 函数。它需要一些参数。实际参数在我的视图模型的集合中。这个 JavaScript 函数需要被调用的次数与集合中的元素一样多,每次都将集合的元素作为各自的参数。
该函数需要在文档加载时调用。所以,我想我应该把这个函数的调用放在document.ready
. 问题是我不知道如何遍历我的 C# 集合并同时生成 Javascript。你知道我怎么能做到这一点吗?任何帮助将不胜感激。
您可以将视图模型序列化为 JSON 并将其呈现在视图的脚本块中:
<script type="text/javascript">
$(function() {
var collection = @Html.Raw(Json.Encode(Model));
$.each(collection, function (i, value) {
yourFunction(value);
});
});
</script>
第一步:
将集合转换为 JSON 并将其放入 viewbag :
ViewBag.Collection = Json.Encode(your - collection)
第二步:
使用 Viewbag 中的那个集合
<script>
$(document).ready(function(){
var collection = @Viewbag.collection;
});
</script>
第三步:
使用该对象遍历它并在其中做一些事情:
<script>
$(document).ready(function(){
var collection = @Viewbag.collection;
$.each(collection , function() {
//Do Stuff
});
});
</script>