转至:https://my.oschina.net/u/658145/blog/167651

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title> Ajax </title>

<script type="text/javascript">

var xmlHttpReq = null;//XMLHttpRequest对象 // 去除字符串两边空格

String.prototype.trim = function () {

return this.replace(/(^\s*)|(\s*$)/g, "");

} // 创建XMLHttpRequest对象

function createXMLHttpRequest() {

if (window.XMLHttpRequest) {// IE 7.0及以上版本和非IE的浏览器

xmlHttpReq = new XMLHttpRequest();

} else

{

// IE 6.0及以下版本 t

ry { xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP");

}catch (e) {

try {

xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");

}catch (e) {}

}

} if (!xmlHttpReq) {

alert("当前浏览器不支持!");

return null; }

return xmlHttpReq; } //Ajax请求

function tiplist(txt,requestMethod){

var txtValue = txt.value.trim(); if(txtValue!=""){

var parameter = "code="+txtValue+"&str=中文";

var requestURL = "http://127.0.0.1:8080/MyProj/ShowServlet";

xmlHttpReq = createXMLHttpRequest();

if("GET" == requestMethod.trim().toUpperCase()){

xmlHttpReq.open("GET",encodeURI(EncodeURI(requestURL+"?"+parameter)),true);

xmlHttpReq.setRequestHeader("If-Modified-Since","0"); xmlHttpReq.send("null");

}else if("POST" == requestMethod.trim().toUpperCase()){ xmlHttpReq.open("POST",requestURL,true);

xmlHttpReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");

xmlHttpReq.send(encodeURI(encodeURI(parameter))); }else{ alert("错误的请求方式!");

return; } xmlHttpReq.onreadystatechange = function(){ if(xmlHttpReq.readyState == 4){

switch(xmlHttpReq.status){ case 200:

//var datas = xmlHttpReq.responseXML.getElementsByTagName("data");

//alert(datas.length); document.getElementById("downlist").innerHTML = xmlHttpReq.responseText;

break; case 400: alert("错误的请求!\nError Code:400!"); break;

case 403: alert("拒绝请求!\nError Code:403!"); break;

case 404: alert("请求地址不存在!\nError Code:404!");

break; case 500: alert("内部错误!\nError Code:500!");

break; case 503: alert("服务不可用!\nError Code:503!");

break; default: alert("请求返回异常!\nError Code:"+xmlHttpReq.status);

break; } } } } } </script> </head> <body>

<input type="text" id="txt"name="txt"value=""onkeyup="tiplist(this,'post');" /><br/><br/>

<divid="downlist"style="width:200px;height:300px;background:gray;"></div> </body> </html>

转贴:JavaScript实现Ajax请求简单示例的更多相关文章

  1. 原生javaScript完成Ajax请求

    使用原生javaScript完成Ajax请求,首先应该创建一个对象XMLHttprequest,考虑到兼容低版本IE浏览器,使用ActiveXObject对象,代码入下: var request; i ...

  2. javascript版Ajax请求

    什么是Ajax请求,Ajax也就是“Asynchronous JavaScript and XML”(异步JavaScript和XML),无刷新数据读取.能减少流量的消耗,也提高了浏览的流畅性,给用户 ...

  3. AJAX的简单示例:注册校验

    众所周知,我们每次需要注册一个网站的用户名时,都会校验该邮箱.用户名是不是正确的格式.是不是有被使用过,密码是否符合规则,二次确认是否符合. 如果这些校验都采用form表单提交的话,会给用户带来极不好 ...

  4. JavaScript原生Ajax请求纯文本数据

    源代码 ajax1.html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...

  5. JavaScript的Ajax请求示例

    //创建XMLHttpRequest对象              var request = false;            try {                request = new ...

  6. 前端javascript发送ajax请求、后台书写function小案例

    HTML端页面: <td> <input class="pp_text" type="text" name="" valu ...

  7. javascript中Ajax的简单封装

    GET方式的在线:DEMO POST方式在线:DEMO // 1.封裝AJAX函數 function nativeAjax(option,success,error){ // 定义domain,方便环 ...

  8. javascript原生ajax请求

    class Ajax{ constructor(url, method, data, callback_suc, callback_err, callback_run){ this.RT = true ...

  9. JavaScript 伪Ajax请求

    伪Ajax 通过iframe以及form表单,可以实现伪Ajax的方式. 并且它的兼容性是最好的. iframe iframe标签能够获取一个其他页面的文档内容,这说明它内部肯定是发送了一个请求,并且 ...

随机推荐

  1. C#中将结构类型数据存储到二进制文件中方法

    以往在vb6,vc6中都有现成的方法将结构类型数据写入和读取到二进制文件中,但是在c#中却没有现成的方法来实现,因此我查阅了一些资料,借鉴了网上一些同学的做法,自己写了个类似的例子来读写结构类型数据到 ...

  2. halcon学习之产品检测

    Rinspect_gasket_local_deformable.hdev   检测垫圈局部变形   *这个例子演示了如何利用局部变形匹配(local deformable matching)来寻找出 ...

  3. Linux--Ubuntu12.04安装NDK

    前言 本篇博客将介绍如何在Ubuntu12.04下安装Android NDK,在其他版本的Ubuntu下,方法也类似.由于Android NDK不能单独作为Android应用程序来运行,因此,使用An ...

  4. AWVS漏洞测试-01节-AWVS的主要作用

    AWVS漏洞工具简单介绍 AWVS全称: Acunetix Web Vulnerability Scanner 中文翻译就是:Acunetix网站攻击扫描器 扫描网站漏洞,通过网络爬虫Crawler的 ...

  5. git的一些相关知识

    1.配置多个git远程仓库的ssh-Key切换(转自) 目前的git仓库如github都是通过使用SSH与客户端连接,如果只是固定使用单个git仓库的单个用户 (first),生成生成密钥对后,将公钥 ...

  6. [CoreOS 转载] CoreOS实践指南(七):Docker容器管理服务

    转载:http://www.csdn.net/article/2015-02-11/2823925 摘要:当Docker还名不见经传的时候,CoreOS创始人Alex就预见了这个项目的价值,并将其做为 ...

  7. Updating Protobuf and GRPC in Golang

    转自: http://russmatney.com/techsposure/update-protobuf-golang-grpc/ TL;DR: When protobuf updates, all ...

  8. INSTALL MYSQL IN MAC

    安装好MYSQL后,在System References中找到MYSQL,启动它. 启动之后在终端中输入添加MySQL路径的命令,把MYSQL路径添加到PATH中: PATH="$PATH& ...

  9. Android学习之Handler消息传递机制

    Android只允许UI线程修改Activity里的UI组件.当Android程序第一次启动时,Android会同时启动一条主线程(Main Thread),主线程主要负责处理与UI相关的事件,如用户 ...

  10. Python 中Editplus 特别实用的设置方法

    editplus 中输入tab自动变成4个空格打开tools->preference打开面板,files的子栏目->settings & syntax面板中的 tab/indent ...