求大神帮我看一下 我jsp界面用ajax传输数据 传不到后台servlet

347775473 2015-10-18 05:02:15
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String id=request.getParameter("id");
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>系统项目信息修改</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(
function(){
$.ajax({
type:"post",
url:"servlet/SysItemViewServlet",
data:"id=<%=id%>",
dataType:"json",
success:getItemInfo
});
}
);
function getItemInfo(data)
{
$("#idTd").append(data.id);
$("#itemCodeTxt").val(data.itemCode);
$("#itemValueTxt").val(data.itemValue);
$("#itemNameTxt").val(data.itemName);
$("#fidTxt").val(data.fid);
}
function doReturn()
{
window.location.href="http://localhost:8080/Project2_RestaurantSystem/page/sysitem/list.jsp";
}
function doSave()
{
var itemCode=$("#itemCodeTxt").val();
var itemValue=$("#itemValueTxt").val();
var itemName=$("#itemNameTxt").val();
var fid=$("#fidTxt").val();

var paramStr="id=<%=id%>&itemCode="+itemCode+"&itemName="+itemName+"&itemValue="+itemValue+"&fid="+fid;
alert('aaaaa');
$.ajax({
type:"post",
url:"servlet/SysItemEditServlet",
data:paramStr,
dataType:"json",
success:updateSuccess
});
alert('bbbbb');
}
function updateSuccess()
{
alert('ccccc');
}
</script> </head>
<h2 align="center" style="color:red">系统项目信息</h2>
<body>
<table border="1" align="center">
<tr><td width="150">ID</td><td width="150" id="idTd"></td></tr>
<tr><td>项目编号</td><td><input type="text" value="" id="itemCodeTxt" /></td></tr>
<tr><td>项目值</td><td><input type="text" value="" id="itemValueTxt" /></td></tr>
<tr><td>项目文本</td><td><input type="text" value="" id="itemNameTxt" /></td></tr>
<tr><td>父ID</td><td><input type="text" value="" id="fidTxt" /></td></tr>
<tr align="center">
<td colspan="2"><input type="button" value="保存" onclick="doSave()"/>      
<input type="button" value="返回" onclick="doReturn()"/></td>
</tr>
</table>
</body>
</html>这是jsp页面package com.project.servlet;


/////////////////////////////////////////////////////

/////////////////////////////////////////////////////

/////////////////////////////////////////////////////

/////////////////////////////////////////////////////




import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;

import com.project.dao.SysItemDao;
import com.project.dao.impl.SysItemDaoImpl;
import com.project.entity.SysItem;



public class SysItemEditServlet extends HttpServlet {

/**
* SysItem的修改功能
* 传入的参数有5个
* 如果id为空,则修改必然失败
* 最终返回结果为字符串
* @author xjt
*/

public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

String idStr=request.getParameter("id");
String itemCodeStr=request.getParameter("itemCode");
String itemNameStr=request.getParameter("itemName");
String itemValueStr=request.getParameter("itemValue");
String fidStr=request.getParameter("fid");
Integer id,fid;
id=Integer.parseInt(idStr);
fid=Integer.parseInt(fidStr);
System.out.println("1111");
SysItem item=new SysItem();
item.setId(id);
item.setFid(fid);
item.setItemCode(itemCodeStr);
item.setItemName(itemNameStr);
item.setItemValue(itemValueStr);
System.out.println("2222");
SysItemDao dao=new SysItemDaoImpl();
boolean result=dao.update(item);
String resultMsg="修改成功!";
if(result==false){
resultMsg="修改失败!";
}

System.out.println(resultMsg);
JSONArray json = JSONArray.fromObject(result);

response.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println(json.toString());
out.flush();
out.close();
}
}这是第二个servlet 就是这个servlet传不进去
...全文
164 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhongyangjian 2015-10-19
  • 打赏
  • 举报
回复
ajax里传的参数格式不对哦,应该是 data:{id:1}这样,如果还不行,你可能要看看servlet怎么接收json格式的数据
伊人丶點點 2015-10-19
  • 打赏
  • 举报
回复
你试试将你ajax当中data属性用{}包含,例如data:{id=<%=id%>}
  • 打赏
  • 举报
回复
传输类型是json,穿的是字符串。
ab637800 2015-10-18
  • 打赏
  • 举报
回复
贴你web.xml配置

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧