关于Form表单一点心得总结
最近忙活了很久的项目,对form表单有了更多更深的认识,终于有点时间,写个小总结
提交方式
- 只要form表单里的那些标签的name属性的值和实体类里面的属性有一样名称的,在提交表单后就可以上传到对应的接口了
- 有时候我们引入一些插件,比如下拉搜索树,他会自带name属性的,我们要做的就是修改他们的name属性和实体类对应,不然在分页的情况下,对应的值可能没法继续传递下去
- 有时候我们可能会要传个List到后端,有时候在实体中定义List可以直接传到后端,但是这种传递是不可靠的,只能临时使用一次,当你点击分页就没法再次获取到了,这时候我用了Thymeleaf的一个自定义属性完成了传值
<input type="hidden" th:each="returnClassifyChildId,count:${returnClassifyChildIdList}" th:value="${returnClassifyChildId}" th:attr="name=${'checkObjectClassifyChildIdList['+count.index+']'}" ></input>
关键在于
th:attr="name=${'checkObjectClassifyChildIdList['+count.index+']'}"
这样就可以循环遍历List值,传到实体对应的checkObjectClassifyChildIdList中去了
4. 有时候,我们在js当中会手写一些input框传值,一般name和实体对应就可以传,但有时候还是会传List,这时候我们可以直接for循环
for (let i = 0; i < classifyChildIdList.length; i++) {
inputs+=' <input type="hidden" value="'+classifyChildIdList[i]+'" name="checkObjectClassifyChildIdList['+i+']" />\n'
}