我有一个分部 View ,它在我提交 Ajax 表单后返回一个 Javascript 函数调用。它获取地址列表并调用 Javascript 函数以在 Google map 上进行地理编码和放置标记。当我编译以下代码时,在 ForEach 行的 var 周围出现“条件编译已关闭”错误。
@model IEnumerable<TestStore.Models.Address>
@if (Model.Count() > 0)
{
<script type="text/javascript">
deleteMarkers();
@foreach(var item in Model)
{
codeAddress('@item.GetAddress');
}
</script>
}
我摆弄了代码,下面的代码没有编译错误:
@if (Model.Count() > 0)
{
<script type="text/javascript">
deleteMarkers();
</script>
foreach (var item in Model)
{
<script type="text/javascript">
codeAddress('@item.GetAddress');
</script>
}
}
为了便于讨论,如果我有更长的逻辑在循环内进行大量 Javascript 函数调用,我更愿意将所有内容都包含在 1 个脚本 block 中。我搜索了 Stack Overflow,似乎 Razor 语法可以放在脚本 block 中,但我不知道在我的示例中是什么样子。
最佳答案
或者您可以使用 @:
语法而不是 <text>
循环中的元素。 Here是一个教程。
@:codeAddress(@item.GetAddress);
关于c# - Javascript block 内的 ASP MVC Razor foreach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12686014/