这个不是能不能取到的问题,而是浏览器是否会发送的问题除表单元素以外的任何内容,浏览器都不会将它发送到服务器端,那么你如论如何也是取不到的如果想实现你的想法,可以在前端用JS将你要发送的内容通过URL参数或是hidden表单元素值提交到服务器
我们先看一个小例子:
html代码:
需求:是获取form表单中的用户名和密码并包装成一个对象
这个需求是我们大部分时候在发送ajax请求时需要做的一个工作。
传统JS写法:
看一下效果:
可以看到,我们已经实现了需求,但是我们写的JS代码很繁琐,我们需要先获取form表单中input框元素,然后元素的value值,最后包装成一个对象。
FormData的JS写法:
效果如下:
通过这个例子你应该能感受到FormData的便利性,只需要 new FormData(form) 一句代码就可以把form表单内的所有信息都以键值对的形式包装成一个对象返回。
FormData对象是用来将form表单数据编译成键值对,这么做有两个好处:
FormData的常用 *** 作方法:
FormData对象可以帮我们更方便的收集表单数据并中的整理成对象,大大方便了我们发送ajax请求。
可以获取form对象,然后获取它的所有子元素,并判断元素类型是不是input或select
1
2
3
4
5
6
7
8
var ff=documentforms[0];
for (var i=0;i<ffelementslength;i++)
{
var ee=ffelements[i];
if("INPUT"==eetagName||"SELECT"==eetagName){
//处理代码
};
}
不是接不了,是你根本就没传值过去。
你虽然写了个form,但form里并没有传递任何的东西。
如果你希望传递商品名称你可以写成:outprintln("商品名称:<input type='text' name='fname' value='“+persongetFname()+”'>");
其他类似。
补一下html,表单方面的内容吧。
另外你写jsp也可以用html代码和java代码混写,这样全部内容用out输出还不得累死。
以上就是关于request.form只能取得input或者说本身带有name属性的元素吗如果想获取div或table的值能做到吗全部的内容,包括:request.form只能取得input或者说本身带有name属性的元素吗如果想获取div或table的值能做到吗、前端小技巧:学会用FormData对象收集表单数据、怎样获取form下所有的input等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)