form中input项不固定,可以自由添加,怎么把数据传到服务器端?
form表单中的数据项数目不定,用户可以通过添加按钮自由增加,那么服务器端如何把这些数据处理并写入到数据库中呢?包括前端怎么配合实现这个?
我明白简单的前端<input type="text" name="username">
的这个项,服务器端的servlet
可以用request.getParameter("username")
轻松获取。但我这个数目都不固定的,更何况input的name也不知道呢?
图是我的项目,可以添加多个回报。金额,汇报时间,回报内容由用户输入,添加不定数目个后提交到服务端,后加入数据库。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
可以多这个
<input type="text" name="username[]">
然后服务器端会得到一个数组,保存所有的输入input的name属性应该不是随机的吧,应有一定的特征信息
例如
....
var userInputs="";
$('input[type=text][name^=username]').each(function(index,item){
.....
});
...
前端按你的业务逻辑将数据拼装成逗号分隔字符串或json格式字符串后,提交一个隐藏表单的方式提交到后台
如果你用struts或springmvc框架的话,只要name值一样然后后台用数组接收,如果是用Servlet可以request.getParameterValues(“属性值”),同样返回的是一个数组
前台可以使用,jquery 的 $("form").serialize(),让你所有的添加的input 都在同一个form 就行。
后端代码,可以遍历所有params,然后获取,入库。
你用js组装好提交的数据,再提交不就行了。