首页 > form中input项不固定,可以自由添加,怎么把数据传到服务器端?

form中input项不固定,可以自由添加,怎么把数据传到服务器端?

form表单中的数据项数目不定,用户可以通过添加按钮自由增加,那么服务器端如何把这些数据处理并写入到数据库中呢?包括前端怎么配合实现这个?

我明白简单的前端<input type="text" name="username">的这个项,服务器端的servlet可以用request.getParameter("username")轻松获取。但我这个数目都不固定的,更何况input的name也不知道呢?

图是我的项目,可以添加多个回报。金额,汇报时间,回报内容由用户输入,添加不定数目个后提交到服务端,后加入数据库。


前台可以使用,jquery 的 $("form").serialize(),让你所有的添加的input 都在同一个form 就行。
后端代码,可以遍历所有params,然后获取,入库。


input的name属性应该不是随机的吧,应有一定的特征信息
例如
....
var userInputs="";
$('input[type=text][name^=username]').each(function(index,item){
.....
});
...
前端按你的业务逻辑将数据拼装成逗号分隔字符串或json格式字符串后,提交一个隐藏表单的方式提交到后台


可以多这个<input type="text" name="username[]"> 然后服务器端会得到一个数组,保存所有的输入


如果你用struts或springmvc框架的话,只要name值一样然后后台用数组接收,如果是用Servlet可以request.getParameterValues(“属性值”),同样返回的是一个数组


你用js组装好提交的数据,再提交不就行了。

【热门文章】
【热门文章】