zoukankan      html  css  js  c++  java
  • 利用jQuery接受和处理xml数据

    使用jQuery+Servlet接受和处理xml数据,模拟判断用户名是否存在,效果如下:

    服务器端

    package com.ljq.test;

    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.ServletException;
    import java.io.IOException;
    import java.io.PrintWriter;

    /**
    * 利用jQuery接受和处理xml数据
    *
    * @author jiqinlin
    *
    */
    @SuppressWarnings("serial")
    public class AjaxXmlServer extends HttpServlet{

    protected void doGet(HttpServletRequest request,
    HttpServletResponse response) throws ServletException, IOException {
    try{
    //修改一----响应的Content-Type必须是text/xml
    response.setContentType("text/xml;charset=utf-8");

    PrintWriter out = response.getWriter();
    //1.取参数
    String old = request.getParameter("name").trim();
    //修改二-----返回的数据需要拼装成xml格式
    StringBuilder builder = new StringBuilder();
    builder.append("<message>");
    //2.检查参数是否有问题
    if(old == null || "".equals(old)){
    builder.append("用户名不能为空").append("</message>");
    } else{
    //3.校验操作
    String name = old;

    if(name.equals("linjiqin")){
    builder.append("用户名[" + name + "]已经存在,请使用其他用户名").append("</message>");
    } else{
    builder.append("用户名[" + name + "]尚未存在,可以使用该用户名注册").append("</message>");
    }
    out.println(builder.toString());
    System.out.println(builder.toString());
    }
    } catch(Exception e){
    e.printStackTrace();
    }
    }

    protected void doPost(HttpServletRequest request,
    HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
    }
    }
     

              

    修改web.xml

        <servlet>
    <servlet-name>AjaxXmlServer</servlet-name>
    <servlet-class>com.ljq.test.AjaxXmlServer</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>AjaxXmlServer</servlet-name>
    <url-pattern>/servlet/ajaxXmlServer</url-pattern>
    </servlet-mapping>

             

    请求页面

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <script type="text/javascript" src="http://localhost:8083/jqueryprj/js/jquery-1.3.1.js"></script>
    <script type="text/javascript" src="http://localhost:8083/jqueryprj/js/verifyjqueryxml.js"></script>
    </head>
    <body>
    <input type="text" id="userName" />
    <input type="button" value="校验" onclick="verify()"/>
    <div id="result"></div>
    <!--div和span的直观差异,div中的内容独占行,span中的内容和前后其他内容相处良好-->
    </body>
    </html>

                  

    js

    function verify(){
    var userName = $("#userName").val();
    $.ajax({
    type: "POST", //http请求方式
    url: "servlet/ajaxXmlServer", //服务器端url地址
    data: "name=" + userName, //发送给服务器端的数据
    dataType: "xml", //告诉JQuery返回的数据格式
    success: callback //定义交互完成,并且服务器正确返回数据时调用的回调函数
    });
    }

    //回调函数
    function callback(data) {
    var jqueryObj = $(data);
    //获取message节点
    var message = jqueryObj.children();
    //获取文本内容
    var text = message.text();
    //4.将服务器段返回的数据动态的显示在页面上
    $("#result").html(text);
    }
  • 相关阅读:
    保存时出错jup
    Spyder默认页面布局调整
    根据所处位置提取单元格内容的函数(left、right、mid)和查找字符串位于单元格内容第几位的函数(find)
    excel打印出现多余空白页
    Excel的布尔值运算
    excel VBA一个fuction同时执行多个正则表达式,实现方法
    excel VBA把一个单元格内容按逗号拆分并依次替换到另一个单元格的括号里面(本题例子,把文本中的括号换成{答案}的格式,并按顺序填空)
    excel自动记录项目完成进度,是否逾期,逾期/提前完成天数,计算天数可以把now()改为today()
    jquery循环动画
    jquery动画(控制动画隐藏、显示时间轴)
  • 原文地址:https://www.cnblogs.com/aure/p/5142413.html
Copyright © 2011-2022 走看看