AJAX与Servlet的相关使用

来源:互联网 发布:java集合教务管理系统 编辑:程序博客网 时间:2024/06/04 01:05

使用AJAX大多数还是与servlet有关系的,尝试了好多次,感觉这种写法比较好!(不喜勿喷)

以检测用户名是否存在为例:

首先创建jsp页面;代码如下

  <body>    用户名:<input type="text" id="username"/><br>    <div id="checkdiv"> </div>    <input type="button" id="button" value="按钮" onclick="check()"/>  </body>

然后编写javasc页面:

<script type="text/javascript">   var xmlhttp;    //获取  function createXmlHttp() {    //根据window.XMLHttpRequest对象是否存在使用不同的创建方式    if (window.XMLHttpRequest) {       xmlHttp = new XMLHttpRequest();                  //FireFox、Opera等浏览器支持的创建方式    } else {       xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");//IE浏览器支持的创建方式    }  }    function check(){  var name = document.getElementById("username").value; createXmlHttp();                        //创建XmlHttpRequest对象xmlHttp.onreadystatechange = checkName;xmlHttp.open("GET", "test?username=" + name, true);xmlHttp.send(null);  }  function checkName(){  if (xmlHttp.readyState == 4) {        var value = xmlHttp.responseText;                        //取得地区信息        //当地区信息包含数据时将信息写回到文本框中     document.getElementById("checkdiv").innerHTML=value;    }  }</script>


创建AJAX可以使用这样的步骤:

1、创建全局变量xmlHttp;

2、编写初始化方法createXmlHttp(),什么时候需要用到xmlHttp,直接createXmlHttp();

3、调用onreadystatechange方法;

4、编写收到servlet传来值的方法;

Servlet按照正常创建即可

如有乱码问题可以再servlet中补充这样的代码:

response.setContentType("text/html;charset=UTF-8");request.setCharacterEncoding("utf-8");
test文件的内容为:

public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=UTF-8");request.setCharacterEncoding("utf-8");PrintWriter out = response.getWriter();String name = request.getParameter("username");if(name.equals("wxc")){out.println("用户名已存在");}else{out.println("用户可以使用");}}
创建好文件,发布到服务器上便可运行:


就是这样。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。


0 0
原创粉丝点击