如何使用Ajax(XMLHttpRequest)发送带参数的请求,以及如何在Servlet中获取请求中的参数

如何使用Ajax(XMLHttpRequest)发送带参数的请求,以及如何在Servlet中获取请求中的参数,第1张

其实这样设计的初衷是为了在客户端发出请求前,对要发送的数据进行预处理。比如用户密码的加密 *** 作等等。var xml>

你的页面中加个链接跳到你的Servlet中, 比如你的Servlet名字叫 test

你就加一个 <a href="testval=你要传的值">点我</a>

然后在Servlet中获取的时候 requestgetParamater("val");就可以获得!

出现乱码的原因及解决方法:

在Web开发中,挺多的时候都是通过超链接去传递中文参数的,这也会导致在显示的时候也会出现乱码,对于超链接来说,它实际上是向服务器端发送了一个请求,而它发出的请求是属于get请求,所以对于超链接的乱码来说,它处理乱码的方式和表单的get请求出现乱码的方式是一样的。

客户端的get请求

对于不同的请求方式,解决乱码的问题也是不一样的,对于客户端的get请求来说,服务器端处理要想不出现乱码,解决这个问题稍微复杂一些,需要用到String类型的构造函数,其中的一个构造函数就是用指定的编码方式去解码,一般都用“UTF-8”的方式。只要在服务器端将请求得到的参数重新构造成一个字符串就行了。如下所示:

String stuname = requestgetParameter("stuname");

String str = new String(stunamegetBytes("ISO-8859-1"),"utf-8")

经过构造之后,客户端输入中文,且表单时get请求的情况下,str就变成了中文了。如果请求参数比较多,最好将它封装成一个工具类:

public class MyUtil

{

public static String getNewString(String str) throws UnsupportedEncodingException

{

return new String(strgetBytes("ISO-8859-1"),"UTF-8");

}

}

String stuname= MyUtilgetNewString(requestgetParameter("stuname"));

你这样写是获取不到type的,可以使用隐藏表单域

<form action="UserServlet" method="get">

<table>

<tr>

<input type="hidden" name="type" value="1">

<td>用户名</td>

<td><input type="text" name="userName" />

</td>

</tr>

<tr>

<td>密码</td>

<td><input type="password" name="password" />

</td>

</tr>

<tr>

<td><input type="submit" value="登陆" />

</td>

</tr>

</table>

</form>

这样就可以获取到了,试试看!

首先第一点 不管是post 还是 get  都有参数的,只是post 表面上看不见, 都能用getParameter() get 对应的属性 , 前提是你必须找对对应的属性名称(如果你不会, 建议你用firebug 去看看,如下图)

第二: getParameter 前面有一个范围的 , 一般是用的request, 所以你就能从对应的request 里面拿到你想要的属性值

你好!

可以使用getAttribute()方法和getParameter()方法,区别在于,getAttribute()方法是从request中得到参数,getParameter()方法是从url中得到参数

打字不易,采纳哦!

以上就是关于如何使用Ajax(XMLHttpRequest)发送带参数的请求,以及如何在Servlet中获取请求中的参数全部的内容,包括:如何使用Ajax(XMLHttpRequest)发送带参数的请求,以及如何在Servlet中获取请求中的参数、Servlet如何获得Form表单的参数、servlet中何如获取a元素的href中设置的参数,获取中文出现乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9727301.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存