我如何使用foreach循环在razor中构建json对象并调用jquery函数

问题描述

|| 我想获取对象列表并遍历该列表并构建一个json对象,并在剃刀的foreach循环中调用jquery函数。
@foreach (var item in Model.CoordinatesObj) {
        var pinpoint = { \"top\": item.Top,\"left\": item.Left,\"width\": item.Width,\"height\": item.Height
            };
       $(\"#toPinpoint\").mapImage.addPinpointExt(pinpoint);
}
我希望能够做到这一点,以便它动态构建此精确对象,并用于通过我的addPinpointExt函数。 Model.CoordinatesObj是对象列表。这样甚至可能吗?如果不是,最好的方法是什么?     

解决方法

        我将for循环放入MVC操作中,然后使用$ .ajax()进行调用
$.ajax({
   url: \"/Home/NewAction/id\",type: \"POST\",error : function(req,status,errorObj) { /* handle error */ },success: function(result) {
        var pinpoint = result;
        $(\"#toPinpoint\").mapImage.addPinpointExt(pinpoint);
   }
});
使用Razor生成HTML。     ,        
$(\"p\")ToArray()
为您创建一个数组,以保存每个html元素的值(示例中为\'p \'段落)。或者,您可以使用each()Jquery函数进行迭代。     ,        如果要将服务器端代码与纯文本(在您的情况下为Javascript / JSON)混合,则可以将纯文本包装在
<text>
标记中:
@foreach (var item in Model.CoordinatesObj) {
    <text>
    var pinpoint = { \"top\": @item.Top,\"left\": @item.Left,\"width\": @item.Width,\"height\": @item.Height
        };
    $(\"#toPinpoint\").mapImage.addPinpointExt(pinpoint);
    </text>
}
注意,您还缺少服务器端变量前面的“ 5”。 Phil Haack在Razor语法上有一个不错的参考页。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...