Jquery 使用Ajax和JSP将表单保存在XML文件中
我想创建一个带有名称和电子邮件的简单表单,并将这些数据保存在XML文件中。到目前为止,我发现将Ajax与jQuery结合使用非常简单。所以我使用了通常的代码:Jquery 使用Ajax和JSP将表单保存在XML文件中,jquery,xml,ajax,jsp,Jquery,Xml,Ajax,Jsp,我想创建一个带有名称和电子邮件的简单表单,并将这些数据保存在XML文件中。到目前为止,我发现将Ajax与jQuery结合使用非常简单。所以我使用了通常的代码: //dataString have the values taken from the form var dataString = 'name='+ name + '&email=' + email; $.ajax({ type: "POST", url: "users.xml", data: dataString, da
//dataString have the values taken from the form
var dataString = 'name='+ name + '&email=' + email;
$.ajax({
type: "POST",
url: "users.xml",
data: dataString,
dataType: "xml",
success: function() { .... }
});
如果我理解得很好,我应该在url中添加将要创建的XML文件的名称
当用户单击一个按钮时,我使用Ajax请求调用该函数,然后我应该在某个地方调用一个生成xml的函数
我还用了两颗豆子。一个用于设置用户的元素,另一个用于将数据保存在XML中。我将XStream库用于xml,尽管我不知道这是否是最好的解决方案
现在的问题是,我无法将所有这些连接在一起,以便将数据保存在XML中
有人知道我该怎么做吗
非常感谢 对不起,您的理解不正确。
url
应该指向处理HTTP POST请求的服务器端CGI/API的url。dataType
表示处理HTTP请求后从服务器端返回的HTTP响应的数据类型。这可以是HTML字符串、JSON字符串或XML字符串。为了简化响应的即时处理,可以在那里设置数据类型,以便jQuery知道如何“预处理”响应。通常使用JSON,因为它是Javascript中最紧凑、处理速度最快的
对于JSP/Servlet应用程序,需要让url
指向一个Servlet,该Servlet的doPost()方法实现如下:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// First process HTTP request.
String name = request.getParameter("name");
String email = request.getParameter("email");
// Do your business stuff here. You want to store this in a xml file?
// Then return HTTP response.
response.setContentType("text/xml");
response.setCharacterEncoding("UTF-8");
response.getWriter().write("<status>ok</status>"); // Or whatever XML string you would like to return depending on the outcome of the business stuff.
}
protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
//首先处理HTTP请求。
字符串名称=request.getParameter(“名称”);
字符串email=request.getParameter(“email”);
//在这里处理您的业务。您想将其存储在xml文件中吗?
//然后返回HTTP响应。
setContentType(“text/xml”);
响应。setCharacterEncoding(“UTF-8”);
response.getWriter().write(“ok”);//或根据业务结果返回的任何XML字符串。
}