Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用Ajax和JSP将表单保存在XML文件中_Jquery_Xml_Ajax_Jsp - Fatal编程技术网

Jquery 使用Ajax和JSP将表单保存在XML文件中

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

我想创建一个带有名称和电子邮件的简单表单,并将这些数据保存在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,
 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字符串。
}