gpt4 book ai didi

java - Jquery Ajax调用servlet不成功

转载 作者:行者123 更新时间:2023-12-01 23:01:56 25 4
gpt4 key购买 nike

这是我的 servlet 代码

@WebServlet("/write")
public class write extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public write() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String price = request.getParameter("price");
String description = request.getParameter("description");
System.out.println(name+price+description);
}

这是我的 ajax jquery

$( document ).ready(function() {
var mydata = $("#update").serialize();
$("#update").submit(fuction(){
$.ajax({
url: 'write',
data: mydata,
type: 'POST',
success: function(data){
$(#success).show();
}
});
return false;
});
});

这是我的表格

<form id="update">
<fieldset>
<label for="name">Name</label>
<input type="text" name="name" id="name" class="text ui-widget-content ui-corner-all">
<label for="price">Price</label>
<input type="text" name="price" id="price" value="" class="text ui-widget-content ui-corner-all">
<label for="description">Description</label>
<input type="text" name="description" id="description" value="" class="text ui-widget-content ui-corner-all" >
</fieldset>
<input type="submit" class="ui-button" value="Save it!">
</form>

单击提交按钮后,从网址中我可以看到
admin.jsp?name=sasa&price=sasasa&description=sasasas

但是结果在控制台中没有显示任何内容,似乎我的 jquery 从未调用我的 servlet,我不知道为什么PS:我使用 eclipse 和 tomcat 服务器

最佳答案

我发现有两个问题:

  1. $("#update").submit(fuction(){ 应该是 $("#update").submit(function(){ - n功能缺失
  2. $(#success).show(); 应为 $("#success").show(); 缺少引号。

其余的代码对我来说工作得很好。请求正在到达 doPost 方法。我还在 IE 中捕获了网络请求,并且能够看到对服务器的写入请求。
我应该在这里添加一个重要的一点:您的 #("update").serialize() 正在向服务器传递空值,因此 servlet 中的 SOP 打印为空白。尝试向其中添加一个字符串常量,例如 System.out.println("Values : "+name+price+description);

关于java - Jquery Ajax调用servlet不成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23283987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com