ajax如何向servlet传参接收 - Web 开发 / Ajax
刚学了ajax 但是servlet接受不到我的username值
js代码:
<script type="text/javascript">
     var xmlHttpRequest=null;
     function ajaxsubmit(){
     	if(window.ActiveXObject){
     		xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
     	}
     	else if(window.XMLHttpRequest){
     		xmlHttp=new XMLHttpRequest();
     	}
     	if(null!=xmlHttp){
     		var username=document.getElementsByName("username")[0].value;//username值不为空,用alert()能打印出来
     		var url="ajaxservlet?username="+username;
     		xmlHttp.open("GET",url,true);
     		xmlHttp.onreadystatechange=ajaxCallback;
     		xmlHttp.send(null);
     	}     
     }
     function ajaxCallback(){
     	if(xmlHttp.readyState==4){
     		if(xmlHttp.status==200){
     			var responseText=xmlHttp.responseText;
     			document.getElementById("div1").innerHTML=responseText;
     		}
     	}
     }
     </script>
在servlet中用
String username=request.getParameter("userame");
接收传过来的username值,但是后台始终报空,应该如何传参接收
------解决方案--------------------var url="ajaxservlet?username="+encodeURIComponent(username);
另外,你的代码写错了
String username=request.getParameter("userame");
应该是
String username=request.getParameter("username");
少了一个n
------解决方案--------------------设置好编码吧。如果你是中文,用的是get方法,用的是tomcat服务器,可以在server.xml的配置文件中找到connerter的那个元素的配置,加一个URIEncoding="gbk"或utf-8即可。