AJAX向servlet传值收不到

///////////////////////////////////这里是ajax//////////////////////////////省去部分。。。functi... /////////////////////////////////// 这里是ajax //////////////////////////////
省去部分。。。
function like(){
var film=document.getElementById("like").value;
var name=<%=Str%>;
createXMLHttpRequest();
var url ="MessageServlet?method=3";
xmlHttp.open("post",url,true);
xmlHttp.setRequestHeader("content-type", "application/x-www-form-urlencoded");
xmlHttp.send("user="+escape(name)+"&film="+escape(film));
xmlHttp.onreadystatechange = showResult;
}
//////////////////////////////////////// servlet ,有多个方法,这里需要的是method=3时的 //////////////////////////////////
。。。。。省去
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
method = Integer.parseInt(request.getParameter("method"));
。。。。。
if(method==3){
like(request,response);
}
}。。。。。。。。。。。省去其他方法
public void like(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
String username=request.getParameter("user");
String filmname=request.getParameter("film");
film Film=new film();
Film.setFilmname(filmname);
Film.setUser(username);
Dao like=DaoFactory.creatDao();
try{
like.like(Film);
}catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} /////////////////// method可以收到,执行like方法,但是“user”和“film”都是null
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
aoisora_blue
2013-06-30 · TA获得超过412个赞
知道小有建树答主
回答量:583
采纳率:0%
帮助的人:364万
展开全部
前台js,alert一下看看film,user取到值没有,用firefox看下你发出去的ajax请求发送内容部分有内容不
更多追问追答
追问
alert里有显示。我尝试着把method=3也写进send()里,servlet可以收到这个,因为提示数据库不能插入null,说明就是user和film收不到
追答
method=3肯定是可以的啊,这个参数是你接在url后面的,你可以尝试把参数都放到url后面
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式