jsp怎么把值通过JS传action?

先看下我写的代码;------页面-----<s:formaction="searchUser"method="post"onsubmit="returnvalidate... 先看下我写的代码;
------页面-----
<s:form action="searchUser" method="post" onsubmit="return validate();">
<input type="text" id="uname" >
<input type="submit" class="button" value="查询" >
</s:from>

---------JS-----------
function validate()
{
var username=document.getElementById("uname").value;
if(username.length!=0)
{
return true;
}
else
{
alert("请输入姓名!");
return false;
}

}

----------------action获取--------
HttpServletRequest request = ServletActionContext.getRequest();
String unames=request.getParameter("uname");
System.out.println("username: "+unames);

但是输出却是null?
我哪里写错了 请大侠帮忙
String unames=request.getParameter("username");
System.out.println("username"+unames);
action是这个 上面的写错了
展开
 我来答
青鸟中关村专家
2015-07-18 · 知道合伙人软件行家
青鸟中关村专家
知道合伙人软件行家
采纳数:1734 获赞数:8440
就职于北大青鸟中关村,自2004年踏入北大青鸟这个行业,已经有11年工作经验和8年的培训经验,寓教于乐

向TA提问 私信TA
展开全部

使用ajax发起异步请求将数据传递给action即可

代码如下:

<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
            //按钮点击事件

            $("#btn").click(function(){
                    //发起异步请求

                    //参数一:请求的地址;参数二:传递的参数;参数三:回调函数,接收服务器回传的数据

                    $.post("user.action",{"name":$("#uname").val()},function(data){
                            //显示异步回传的数据

                            alert(data);

                    });

            });

    });

</script>
miniappq0kNXcJncyvV5
2011-11-21 · TA获得超过275个赞
知道答主
回答量:103
采纳率:0%
帮助的人:91.5万
展开全部
js里面先获取文本框的值, var username=document.getElementById("uname").value;
然后 在js 写个方法
function demo(){
var username=document.getElementById("uname").value;
window.location="你跳转的URL?uname="+username;
或者
document.location="你跳转的URL?uname="+username;
}
后台取值 就用你的action 取值
String unames=request.getParameter("uname");//uname 于页面uname相对应
就这样简单 ,没关系,一回事
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gug007
2011-11-21 · 超过26用户采纳过TA的回答
知道答主
回答量:126
采纳率:0%
帮助的人:80.4万
展开全部
<input type="text" id="uname" >改成<input type="text" id="uname" name="uname">
String unames=request.getParameter("username");改成String unames=request.getParameter("uname");
原因是String unames=request.getParameter("username");这样肯定是错的
request.getParameter(param)这个方法的param参数必须要有对应的html元素,就是name=param的这样html元素,才能取到,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bj_liuhuibin
2011-11-21 · TA获得超过131个赞
知道答主
回答量:92
采纳率:0%
帮助的人:79.7万
展开全部
<s:form action="" method="post" onsubmit="return validate();" name="form">
<input type="text" id="uname" >
<input type="submit" class="button" value="查询" >
</s:from>

---------JS-----------
function validate()
{
var username=document.getElementById("uname").value;
if(username.length!=0)
{
return true;
}
else
{
alert("请输入姓名!");
return false;
}
var form=document.getElementById("form");
form.action="searchUser.do?username="+username;
form.submit();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liuguopin_2012
2011-11-21
知道答主
回答量:64
采纳率:0%
帮助的人:25.4万
展开全部
--页面--
<input type="text" id="username" name="username" >
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式