利用ajax,jsp技术进行向数据库传数据时,出现undefined的数据

带骨火腿肠 2017-11-21 04:48:25
刚开始学习ajax的方式进行数据的前后台交互,希望大神给些建议
前台:
//为什么加【0】,这个不懂,删除之后就会出现undefined,但是我仿照username给password也加了[0]之后就好使了,请问这是为什么?
var username = document.getElementsByName("username")[0].value;
var password = document.getElementsByName("password").value;
后台:
String username=request.getParameter("username");
String password=request.getParameter("password");
...全文
730 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2017-11-22
  • 打赏
  • 举报
回复
getElementsByName得到的是dom数组,数组没有value属性,当然是undefined,要去数组里面的dom对象,调用value属性才是获取dom对象的值

Web开发学习资料推荐
ajax对象属性withCredentials
JavaScript apply与call的用法
qq_39846633 2017-11-22
  • 打赏
  • 举报
回复
引用 2楼我是你的主体 的回复:
我怎么知道get拿到的数组对象?
这还不简单,你拿到数组后进行遍历不就好了。js里面一样能写循环的。不过一般一个页面怎么会有多个账号密码呢。。
蕤sunny 2017-11-22
  • 打赏
  • 举报
回复
楼上的说的都挺对的,getElementsByName这个方法,返回的是username的一个数组,就是你项目中有几个username,这个数组中就会有几个元素,你需要取到这个dom才能进行操作,直接操作数组是不行的。
带骨火腿肠 2017-11-21
  • 打赏
  • 举报
回复
我怎么知道get拿到的数组对象?
qq_39846633 2017-11-21
  • 打赏
  • 举报
回复
因为你get拿到的是名为username的数组,所以写0代表拿这数组里面的第一个元素。所以你密码那里写0也可以,不然数组.value肯定是找不到的

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧