动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP技巧 ]的信息



本月文章推荐
.如何用ASP将一大段文字中的HTML的.
.学习ASP有用的代码(很有用哦!).
.ASP与JSP的比较(一) .
.ASP调用带参数存储过程的几种方式.
.利用ASP规划聊天室.
.ASP调用WEBSERVICE文档.
.用ASP生成ZT条型码.
.用IE和SQL2k开发一个XML聊天程序.
.用.net开发asp组件.
.运用ASP调用数据库中视图及存储过.
.asp中对ip进行过滤限制函数.
.结束ADOVB.INC的办法.
.建立三层结构的ASP应用程序.
.如何用ASP编写网站统计系统四.
.在Asp中如何快速优化分页的技巧.
.一个asp快速字符串连接类.
.ASP 中健壮的页结构的异常处理.
.在ASP中使用智岛网格控件全过程.
.ASP终极防范上传漏洞 .
.在红蜻蜓中实现多房间.

在基于Mozilla的浏览器中使用XMLHttpRequest对象

发表日期:2003-9-16 |


IE通过允许开发人员在Web页面内部使用安全的ActiveX组件扩展自身的功能。微软在无状态连接方面的产品是XMLHTTP组件。

使用XMLHTTP组件,开发人员可以不用从当前的Web页面导航而直接传输数据到服务器上或者从服务器取数据。这个功能是重要的,因为它帮助减少了无状态连接的痛苦。它还可以排除下载冗余HTML的需要,从而提高进程的速度。

Mozilla做出的回应是创建它自己的继承XML代理类:XMLHttpRequest类。对于大多数情况,XMLHttpRequest对象的行为很像XMLHTTP组件。这就意味着你可以使用很多与XMLHTTP组件相同的帮助信息。方法和属性类似,然而,所有的方法和属性都是以小写字母开头,并且还有一些属性不支持。

下面是一个使用eXtensible Binding Language(XBL)将一个行为绑定到一个<INPUT>元素来更新XML数据岛的简单例子。数据被发送到服务器处理。

xml_http.asp:

<%@ Language=VBScript %>
<%
Response.Expires = -1
If Request("action") = "update" Then
    Dim xml
    Set xml = Server.CreateObject("MSXML2.DOMDocument")
    xml.load Request
    Response.Writexml.xml
    Set xml = Nothing
    Response.End
End If
%>
<html>
<head>
<style>
.linkedData {
    -moz-binding: url(link_data.xml#link);
}
</style>
<script language="JavaScript">
<!--
function test() {
    var xml = document.getElementById("xmlData");
    if (xml != null) {
        varxmlhttp = new XMLHttpRequest();
        xmlhttp.open("POST", "xml_http.asp?action=update", false);
        xmlhttp.send(xml.innerHTML);
        alert(xmlhttp.responseText);
    }
}
//-->
</script>
</head>
<body>

<xml id="xmlData" name="xmlData" style="visibility:hidden;">
    <root>
        <link_data/>
    </root>
</xml>

<form id="thisForm" name="thisForm">

<input type="text" class="linkedData" name="txtLink" id="txtLink" size="25">
<br>
<input type="button" value="Test" onclick="test()">

</form>

</body>
</html>

link_data.xml:

<?xml version="1.0"?>
<xbl:bindingsxmlns:xbl="http://www.mozilla.org/xbl">
    <xbl:binding id="link">
        <xbl:handlers>
            <xbl:handler event="change">
                var xml = document.getElementById("xmlData");
                var root = xml.childNodes[1];
                varlink_data = root.childNodes[1];
                link_data.childNodes[0].nodeValue = event.originalTarget.value;
            </xbl:handler>
        </xbl:handlers>
    </xbl:binding>
</xbl:bindings>
 


xml_http.asp文件创建一个XML数据岛,创建的数据岛有一个重要节点:link_data。而且,这个HTML的表现会创建一个文本框和一个用于创建发送XML数据给服务器的事件的按钮。

IE允许你嵌入XML数据岛并使用那个数据岛将绑定HTML元素到底层的数据。Mozilla靠XBL为每个元素创建行为。使用XBL,你可以为<INPUT>元素创建一个行为,所以在onChange事件发生时,“bound”XML节点就能够被更新。“linkedData”样式类通知Mozilla文件link_data.xml将要被用来创建绑定。这个类是在<INPUT TYPE=”text” … >元素中使用的。

如果你分析link_data.xml的代码,你会注意到onchange事件处理程序只是简单地获取XML数据岛的link_data节点然后更新text节点的值。对于这个解决方案这是一个非常简单的方法;它只在文本框中的值有改动之后才会更新数据。这不属于two-way绑定机制,因为如果节点的值改变了,其改变不会反映到文本框。

当用户点击Test按钮的时候,奇怪的事情发生了。一个新的XMLHttpRequest对象被创建用来向服务器改善XML数据。然后,就像XMLHTTP组件在IE中的工作方式一样,你使用open()方法打开远程页面。在这个例子中,我添加了一个查询字符串到xml_http.asp页面中,所以我可以使用同一个页面处理XML传输。使用send()方法,我传递xmlData数据岛的innerHTML。(在IE中,这与指定xmlData数据岛的XML属性一样)。

在xml_http.asp页面被装载时,它检查“action”参数是否传递给页面,并且那个参数是否等于“update”。如果是——就是在我们发出XMLHttpRequest请求的时候——它创建一个DOMDocument组件,从Request对象装载XML,然后返回DOMDocument的xml。Request对象暴露出IStream接口,允许DOMDocument直接从Request对象装载xml。(在另外一种语言中,你可以使用从HTTP请求中发送过来的POST数据。)

这是一个非常简单的例子,说明了Mozilla的XML能力。在Mozilla中操作XML的其中一个缺点就是文档不怎么样。不过上面已经提到过,对于绝大多数部分,你可以使用针对微软的XMLHTTP组件的文档。

 


上一篇:在ASP中使用Oracle数据库技巧 人气:14517
下一篇:巧用in关键字实现数据的批量删除 人气:13986
浏览全部XMLHttp的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-5 360安全卫士 V4.2.0.1004
2008-7-5 PHPDug v2.0 多国语言版
2008-7-5 乘风电影程序 v3.69 (SQL)
2008-7-5 乘风电影程序 v3.69
2008-7-5 wfTextImage文字图像组件 v1.5
2008-7-5 ZY music! v1.1.0705
2008-7-5 FavShop网店系统 v1.0
2008-7-4 天空网络电影系统SKYUC v2.5.1 B
2008-7-4 Drupal v7.x-dev Build 080704
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 GoodCalculator2.0版固件计算器
2008-7-5 RepoName源地址搜索工具 v1.21b
2008-7-5 AgileMessenger即时通讯工具 v1.
2008-7-5 TouchCopy多媒体管理软件 v3.13完
2008-7-5 VideosTone视频铃声 v1.1汉化破解
2008-7-5 TouchPad触摸板 v4.44破解版
2008-7-5 VideosTone破解补丁 v1.0
2008-7-5 Feeds GoogleReader客户端 v0.4.3


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報