转至: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. Oracle 12c

    Common User vs. Local User – 12c Edition http://dbasolved.com/2013/06/29/common-user-vs-local-user-1 ...

  2. VS2010安装失败解决办法

    1. 运行regedit打开注册表: 2. 找到HKEY_LOCAL_MACHINE\SOFWARE\ Microsoft\ Internet Explorer\ MAIN: 3. MAIN子键的权限 ...

  3. mongodb_查询操作使用_条件查询、where子句等(转)

    <?php /*  mongodb_查询操作使用_条件查询.where子句等(转并学习)   1.find()/findOne() mongodb数据库的查询操作即使用find()或者findO ...

  4. python问题:IndentationError:expected an indented block错误解决

    Python语言是一款对缩进非常敏感的语言,给很多初学者带来了困惑,即便是很有经验的Python程序员,也可能陷入陷阱当中.最常见的情况是tab和空格的混用会导致错误,或者缩进不对,而这是用肉眼无法分 ...

  5. Struts2的属性驱动与模型驱动的区别

    1.Struts2的属性驱动. Struts2的属性驱动指的是在action中JSP页面的每一个form中的name都对应在action中有一个属性与之对应.看下面代码片段: <form act ...

  6. android 开发 - 使用okhttp框架封装的开发框架

    概述 在android开发中经常要访问网络,目前最流行的网络访问框架就是Okhttp了,然而我们在具体使用时,往往仍然需要二次封装.我使用Builder设计模式进行了封装形成oknet开源库. 介绍 ...

  7. BugFixed

  8. wordpress表结构

    WordPress仅仅用了10 个表:wp_comments, wp_links, wp_options, wp_postmeta, wp_posts, wp_term_relationships, ...

  9. GPT分区基础知识

    大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区的格 ...

  10. Java程序性能优化Tip

    本博客是阅读<java time and space performance tips>这本小书后整理的读书笔记性质博客,增加了几个测试代码,代码可以在此下载:java时空间性能优化测试代 ...