XmlHttpRequest对象创建于使用片段及处理字符串文本(Get) *.js
//用户名校验的方法
//这个方法将使用XMLHTTPRequest对象来进行AJAX的异步数据交互
var xmlhttp;
function verify() {
//0。使用dom的方式获取文本框中的值
//document.getElementById("userName")是dom中获取元素节点的一种方法,一个元素节点对应HTML页面中的一个标签,如果<input>
//。value可以获取一个元素节点的value属性值
var userName = document.getElementById("userName").value;
//1.创建XMLHttpRequest对象
//这是XMLHttpReuquest对象无部使用中最复杂的一步
//需要针对IE和其他类型的浏览器建立这个对象的不同方式写不同的代码
if (window.XMLHttpRequest) {
//针对FireFox,Mozillar,Opera,Safari,IE7,IE8
xmlhttp = new XMLHttpRequest();
//针对某些特定版本的mozillar浏览器的BUG进行修正
if (xmlhttp.overrideMimeType) {
xmlhttp.overrideMimeType("text/xml");
}
} else if (window.ActiveXObject) {
//针对IE6,IE5.5,IE5
//两个可以用于创建XMLHTTPRequest对象的控件名称,保存在一个js的数组中
//排在前面的版本较新
var activexName = ["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
for (var i = 0; i < activexName.length; i++) {
try{
//取出一个控件名进行创建,如果创建成功就终止循环
//如果创建失败,回抛出异常,然后可以继续循环,继续尝试创建
xmlhttp = new ActiveXObject(activexName[i]);
break;
} catch(e){
}
}
}
//确认XMLHTtpRequest对象创建成功
if (!xmlhttp) {
alert("XMLHttpRequest对象创建失败!!");
return;
} else {
alert(xmlhttp.readyState);
}
//2.注册回调函数
//注册回调函数时,之需要函数名,不要加括号
//我们需要将函数名注册,如果加上括号,就会把函数的返回值注册上,这是错误的
xmlhttp.onreadystatechange = callback;
//3。设置连接信息
//第一个参数表示http的请求方式,支持所有http的请求方式,主要使用get和post
//第二个参数表示请求的url地址,get方式请求的参数也在url中
//第三个参数表示采用异步还是同步方式交互,true表示异步
xmlhttp.open("GET","AJAXServer?name="+ userName,true);
//POST方式请求的代码
//xmlhttp.open("POST","AJAXServer",true);
//POST方式需要自己设置http的请求头
//xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//POST方式发送数据
//xmlhttp.send("name=" + userName);
//4.发送数据,开始和服务器端进行交互
//同步方式下,send这句话会在服务器段数据回来后才执行完
//异步方式下,send这句话会立即完成执行
xmlhttp.send(null);
}
//回调函数
function callback() {
//alert(xmlhttp.readyState);
//5。接收响应数据
//判断对象的状态是交互完成
if (xmlhttp.readyState == 4) {
//判断http的交互是否成功
if (xmlhttp.status == 200) {
//获取服务漆器端返回的数据
//获取服务器段输出的纯文本数据
var responseText = xmlhttp.responseText;
//将数据显示在页面上
//通过dom的方式找到div标签所对应的元素节点
var divNode = document.getElementById("result");
//设置元素节点中的html内容
divNode.innerHTML = responseText;
} else {
alert("出错了!!!");
}
}
}
分享到:
相关推荐
通过上述代码片段可以看出,为了兼容各种浏览器环境,我们首先尝试使用 `ActiveXObject` 创建 XMLHttpRequest 对象,如果失败则尝试使用原生的 `XMLHttpRequest` 构造函数。 #### 三、XMLHTTPRequest的主要属性与...
在给定的代码片段中,可以看到`getDatal(url)`函数通过`MSXML2.XMLHTTP.4.0`创建XMLHttpRequest对象,并使用GET方法发起请求,最后返回响应的XML数据。此外,还展示了如何通过`getHTTPPage(url)`函数使用VBScript...
在上述文件片段中,主要展示了XMLHttpRequest对象的使用方法和AJAX的基本原理。下面,我将详细地介绍这些知识点: 1. XMLHttpRequest对象 XMLHttpRequest对象是浏览器提供的用于异步请求的一种机制,它允许...
10. **HTTP和Web服务**:PHP能够处理HTTP请求,通过$_GET和$_POST接收表单数据,使用header函数设置HTTP头,还可以创建XMLHttpRequest对象进行AJAX通信。 以上只是PHP学习的一部分内容,实际的“PHP实用教程”可能...
- 生成随机字符:使用随机数生成器创建一个包含字母、数字的随机字符串。 - 图形化处理:将字符串转化为图像,可以扭曲、旋转、添加噪点、改变颜色等,增加机器识别难度。 - 存储验证信息:服务器端保存生成的...
- 代码片段中使用了`new XMLHttpRequest()`来创建对象,但没有考虑到浏览器兼容性问题。 2. **设置请求**: - 使用`open`方法设置请求方式为GET,URL包含了动态参数`time`和`username`。 - `send(null)`发送请求...
而对于"POST"请求,可以传递一个包含数据的字符串或FormData对象。 在示例中,当用户在用户名文本框中输入内容时,会触发`ajaxFunction()`,从而发起AJAX请求。这样,页面可以在不刷新的情况下与服务器进行交互,...
在旧版本中,可以使用`.overrideMimeType()`方法来接收未经处理的二进制字符串。在XMLHttpRequest Level 2规范中,引入了`responseType`属性,允许设置为`"arraybuffer"`、`"blob"`等,以便更有效地处理二进制数据。...
- **文本/纯字符串**:简单的文本数据,如日志或提示信息。 ### 三、Ajax的使用场景 Ajax广泛应用于网页的各种功能,如: 1. **动态加载**:例如分页、下拉刷新等,只更新部分页面内容。 2. **表单提交**:用户...
函数内部首先构建了一个完整的URL(包括服务器地址和查询字符串),然后使用`getAjax()`函数创建一个`XMLHttpRequest`对象,并调用其`open()`方法初始化请求。`send(null)`则发送请求。当服务器响应就绪状态改变时,...
- 字符串处理:例如字符串的连接、截取、替换,可以用Mid、Left、Right、InStr、Replace等函数。 - 数值计算:VB内置了各种数学函数,如Sqr(平方根)、Rnd(随机数)、Cos/Sin/Tan(三角函数)等。 3. **流程控制** -...
发送XML字符串后,等待响应完成,然后读取返回的响应文本。 这两种方式在实际应用中各有优缺点。HTTP POST方式简单直接,但可能受到跨域限制;SOAP方式则提供了更严格的语义和错误处理,但实现起来相对复杂。选择哪...
JavaScript代码主要集中在处理Ajax请求上,包括创建XMLHttpRequest对象、设置请求、发送请求以及处理响应。 ### 四、注意事项 1. **安全性**:使用Ajax提交表单时需要注意安全问题,如CSRF攻击,确保请求是来自...
name=aa", true)` 表示发送一个 GET 请求到 `/tr/s.txt` 并附加查询字符串 `name=aa`,确保获取到最新的数据而非缓存数据。 ##### 3. 服务器响应 - **响应类型**: - `responseText`:获取服务器返回的文本数据。...
4. **文本/纯字符串**:简单的数据交换也可以直接使用文本格式。 **五、学习资源** 你所提到的《Ajax中文手册》是一个很好的学习资源,它应该涵盖了Ajax的基础概念、实例和常见问题。对于初学者来说,这份手册能...
通过创建XMLHttpRequest对象、打开连接、发送请求和处理响应,我们可以实现页面的局部刷新。 ### 2. Ajax请求的生命周期 - **创建对象**:在JavaScript中创建XMLHttpRequest对象。 - **初始化连接**:设置HTTP方法...
- 解析JSON字符串成Java对象:`JSONObject jsonObject = JSON.parseObject(jsonString);` - 将Java对象转换成JSON字符串:`String jsonString = jsonObject.toJSONString();` 7. **XMLHTTP手册** - XMLHTTP是...
一旦XML文档加载完成,我们可以使用DOMParser API来解析XML字符串,这是一个在所有现代浏览器中都可用的接口: ```javascript function parseXML(xmlString) { const parser = new DOMParser(); return parser....
3. **XMLHttpRequest对象**: IE中需要使用`ActiveXObject`来创建,而其他浏览器则使用`XMLHttpRequest`对象。 ### 第八题:按要求写一个简单的AJAX示例 #### 解析: 尽管题目中的示例被省略了,这里提供一个基本的...
- 在现代浏览器中,可以直接使用`new XMLHttpRequest()`来创建对象。 - 对于老旧的IE浏览器,则需要使用`ActiveXObject`。 2. **读取服务器时间**: - 通过设置`open`方法中的第三个参数为`false`,使得请求同步...