jsajax提交form表单单

&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&&|&
Powered by 阳光大学生网 (C)
沪ICP备号-1
Copyright@ 阳光大学生网 公司介绍 联系我们 合作投稿等联系方式 邮箱js 一个参数和表单一起提交 - ITeye问答
&script type="text/javascript"&
function pa(pp){
alert(pp);
var obj=document.getElementById('form1');
obj.action="user!pagelist";
obj.submit();
&form action="" id="form1"&
& 姓名:&input type="text" id="name" name="name"/&&br/&
& &a href="#" onclick="return pa(1);" id="a1"&上一页&/a&&br/&
& &a href="#" onclick="return pa(2);" id="a2"&下一页&/a&&br/&
& &a href="#" onclick="location='user!pagelist?page=3'"&首页&/a&
遇到的问题是:pa(1)传一个参数,由pa()方法,发一个请求,把page的值和表单中名为name的值一起提交到action时,
提示:&&& java.lang.NumberFormatException: null
java.lang.Integer.parseInt(Integer.java:415)
java.lang.Integer.parseInt(Integer.java:497)
comm.LoginAction.pagelist(LoginAction.java:49)
如果,是按首页这个按时,page的值可以获得,但没有name的值,
请哪个帮忙,谢谢!
采纳的答案
因为你page没有传入你可以在表单中加个Page的隐藏表单域:&input type="text" id="page" name="page"/&或者是在就是函数中action加个参数obj.action="user!pagelist?page="+
果,是按首页这个按时,page的值可以获得,但没有name的值, 这样其实你兵没有提交 而是跳转如果想要name值的话可以传进去
第一
& 你要把obj.action的值为"user!pagelist?page="+pp
& 这仅仅是page的值
第二
& 你要把name也带过去 还要添加
& var name=document.getElementsByName("name").
& 然后再把obj.action的值改为
& "user!pagelist?page=" + pp + "&& name="+name
已解决问题
未解决问题form表单action提交问题详解-js教程-网页制作-壹聚教程网form表单action提交问题详解
本文章来给各位同学介绍关于form表单action提交问题详解,这里包括有参数无效,提交路径问题,action重复提交的分析与解决办法。
form 提交action中参数无效
页面通过表单(form)想服务器提交数据的时候有两种形式,一个是POST,另一个是GET。两种的一个区别是GET会直接把数据附加在url的后面,而POST发送的数据放置在http包中。form的action属性就是提交数据的url地址,method属性可以指定是GET或POST。
需要注意的是如果采用GET方式,那么action url中参数都会被丢弃,提交时候只会把form中的数据拼接在url向服务器提交;但是POST的方式则不会这样,它会按照action指定的url进行提交数据,包含url后面跟着的参数和参数值
action提交路径问题
我遇到的是Form表单提交到servelet处理时遇到的问题:
(1)&form name=&form1& action=&①?& method=&②?&&
&&&&& //表单的内容
&&&& &/form&
(2)对应的处理用户请求的servlet类为HelloServlet.java;
(3)配置web.xml文件:
&servlet-name&③servlet&/servlet-name&
&servlet-class&/HelloServlet&/servlet-class&
&/servlet&
&servlet-mapping&
&servlet-name&③servlet&/servlet-name&
&url-pattern&/①welcome&/url-pattern&
&/servlet-mapping&
然后在login.jsp中应该是:
&form action=&①welcome& method=&②?&&
这样的话login.jsp的url是http://localhost:8080/jsp/login.jsp
而HelloServlet.java的url是http://localhost:8080/jsp/welcome
注:web.xml中③对应的两个servlet-name要一致;①中的url-pattern要与form表单中的action属性值一致。
form表单action重复提交
&在做一个jsp提交页面时,数据莫名其妙提交2次,数据插入2次,开始只把注意力集中在提交到Servlet里,做了很多测试,折腾半天,才测试出来:根本不是Servlet的问题!问题出在jsp页面上。jsp页面的提交事件导致自动提交了2次。
form表单的js判断函数只返回false,忘记写返回true,真是郁闷死。就像下面这样:
function check()
if(&&==document.myform.name.value)
{//作业名称
window.alert(&请先填写作业名称!&);
document.myform.name.focus();
$(&.name&).next().show();
//离开函数
提交按钮 onclick=&:return(checkform());&
上面的check()函数由于缺少return true,导致form表单action重复提交2次。
搜索一下,网上很多人遇到form表单action重复提交2次的问题,原因都是大同小异:
(1)&input type=&submit& value=&tijiao& onclick=&return checkField();&/&或者图片&input type=&image& src=&../images/btn-login.gif& alt=&Login& class=&btn-login& onclick=&return checkField();&/&&&
(2)if(usernameValue !== && && passValue !== &&){&&
&&&&&&&&&&&&&&&&&&
&&&&&&& //document.getElementById(&loginForm&).submit(); 如果写了这行就提交了2次。&&&&
2.jsp页面有些链接地址是&&
&img src=&& /&
&link type=&text/css& href=&&/&& rel=&stylesheet& /&
主要就是连接不能为空。
最近在做一个JAVA项目,发现在登陆页面点击登陆之后都会执行2次ACTION的代码,跟踪了2天终于找到问题的根源:
在登陆页面LOGIN.JSP中,如果提交按钮写成如下的方式则会提交两次:
&script type=&text/JavaScript&&
function loginFunc()
var form = document.getElementById(&form1&);
&& form.submit();
&form action=&processLogin.action& method=&post& id=&form1&&
&s:textfield name=&username& cssClass=&input& style=&width:150& value=&&&&/s:textfield&
&s:password name=&password& cssClass=&input& style=&width:150& value=&&&&/s:password&
&input type=&submit& onclick=&loginSystem()&/&//问题出在这一行
submit类型本身就会提交到ACTION类;onclick方法中又调用了一次submit提交方法,所以导致执行了两次ACTION的代码。
解决方式:
&input type=&button& onclick=&loginSystem()&/&
上一页: &&&&&下一页:相关内容}

我要回帖

更多关于 ajax提交form表单 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信