欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jsp中动态增加html模块并提交表单的几个问题

程序员文章站 2022-04-12 20:23:21
jsp中动态增加html模块并提交表单的几个问题。 对应项目:market 模块:PesticideCheck 案例:动态增加抽检子对象(多个实体组合) 解决方案:依据DO...

jsp中动态增加html模块并提交表单的几个问题。

对应项目:market

模块:PesticideCheck

案例:动态增加抽检子对象(多个实体组合)

解决方案:依据DOM模型,灵活使用

function addItem(obj) {
            itemId++;
            var item = $(obj).parent().parent().next();
            var group = item.find("p")[0];
            item.append($(group).html());
            var temp = item[item.length - 1];
            var groupOther = item.find("p")[itemId];
            var radioObjY = $(temp).find("input")[0];
            var radioObjN = $(temp).find("input")[1];
      if (item!=1) {
                $(radioObjY).attr("name", "screeningResult" + itemId);
                $(radioObjN).attr("name", "screeningResult" + itemId);
            }


        }

        function removeItem(obj) {
            var pSum = document.getElementById("items").getElementsByTagName("p").length;
            if (pSum != 11) {
                $(obj).parent().parent().parent().remove();
            } else {
                return;
            }




        }
同时,对应的select需要动态增加onchange事件,可以通过

onchange="getCommodityBatchByCommodity(this.value,this)"解决,根据this的父兄弟节点去找到对应二级联动的select

对于表单提交可以采用相同的name属性,并在表单提交controller方法中提交对象和数据,比如:

public String savePesticideCheck(@Valid @ModelAttribute("pesticideCheck") PesticideCheck pesticideCheck, BindingResult result, @RequestParam("shopId") int[] shopId,
                                     @RequestParam("batchId") int[] batchId,@RequestParam("commodityId") int[] commodityId, ModelMap modelMap)