后台接收对象含List,前台如何传值

论坛 期权论坛 脚本     
已经匿名di用户   2022-5-29 19:35   1145   0

第一步:创建后台接收对象

public class ProductInfo extends Product implements Serializable {

    private List<Taste> tasteList;

    public List<Taste> getTasteList() {
        return tasteList;
    }

    public void setTasteList(List<Taste> tasteList) {
        this.tasteList = tasteList;
    }
}

第二步:Controller创建接收前端数据方法

  @RequestMapping("/edit")
    @ResponseBody
    public ResultInfo<Boolean> edit(
            ProductInfo productInfo
    ){
        if(productInfo.getTasteList()!=null&&productInfo.getTasteList().size()>0){
            List<Taste> tasteList=productInfo.getTasteList();
            for(Taste taste:tasteList){
                iTasteService.updateById(taste);
            }
        }
        boolean a=iProductService.updateById(productInfo);
        return new ResultInfo<>(a);
    }

第三步:前端传值

其中List填值如下

form.on("submit(addProduct)",function(data){
        //弹出loading
        var index = top.layer.msg('数据保存中,请稍候...',{icon: 16,time:false,shade:0.8});
        var productInfo=data.field;
        $('#tasteList .item').each(function(index,item){
            productInfo["tasteList[" + index + "].tasteImg"] =$('.imgDiv img',this).attr('src');
            productInfo["tasteList[" + index + "].type"] =$('.type',this).val();
            productInfo["tasteList[" + index + "].name"] =$('.name',this).val();
            productInfo["tasteList[" + index + "].id"] = $(this).attr("itemId");
        })

         ...省略
    })

后台接收到数据

下面附上本人js方法失败尝试

  var tasteList=[];
        $('#tasteList item').each(function(){
            var Taste={};
            Taste.tasteImg=$('.imgDiv img',this).attr('src');
            Taste.type=$('.type',this).val();
            Taste.name=$('.name',this).val();
            Taste.id=$(this).attr("itemId");
            tasteList.push(tasteList);
        })
        data.field.tasteList=tasteList;

前端报错 Maximum call stack size exceeded

至此,本次操作记录完成.本次博客纯属个人代码记录,若有好的方法或不同意见,请在评论中探讨

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP