今天一个读者朋友问我:ASP可以实现AJAX 的吗?当然这是个相对来说比较菜鸟的问法,实际上,任何网站动态脚本语言都可以实现AJAX,因为AJAX本身是javascript上的概念,与所采用的动态脚本语言无关。于是我决定首先来讲讲ASP做一个AJAX的应用吧。
首先来讲,什么是AJAX呢,AJAX是一个所写,他的全称是Asynchronous JavaScript and XML ,这里面Asynchronous是“异步”的意思,所以AJAX就是“异步Javascript和XML”的简称。从名称我们可以清晰的看出,AJAX的核心在于Javascrip和XML,“异步”怎么讲呢,异步体现了一个动态请求的过程,这里我将他简单理解为,在网页下载完毕后,再通过Javascript向远端服务器发送某些信息并获得反馈的一种行为。
那么,AJAX究竟涉及哪些技术呢,首先,AJAX需要用到Javascript的xmlhttp组件来和服务器通讯,其次,需要了解通过XMLDOM解析返回的xml数据的方法,最后,还需要了解根据返回的数据来改变网页上某些元素的方法。
这里不多做废话讲解那些枯燥的理论了,我将把代码编写中涉及的知识分布在具体的实例讲解中。
在写上面的文字的时候,我一直在想,拿什么做实例来讲比较好呢,这里拿一个比较简单的AJAX的“文章评论”作为实例好了。
首先来做系统概述,在显示文章的页面,显示一个文本框和一个提交按钮,当点击提交按钮时,将不刷新页面向服务器提交数据,当提交完毕后,服务器将返回一个xml文档以告诉当前javascript是否处理成功。
OK,系统概述昨晚了,我们来看下大概的数据库结构。
字段名 |
字段类型 |
作用 |
备注 |
ArticleID | int | 文章编号 | 主键,自增 |
ArticleTitle | nvarchar(50) | 文章标题 | |
ArticleContent | ntext | 文章内容 |
字段名 |
字段类型 |
作用 |
备注 |
ArticleComentID | int | 评论编号 | 主键,自增 |
ArticleID | int | 文章编号 | 外键 |
ArticleCommentContent | nvarchar(100) | 评论内容 |
文章页的无关代码我就不写了,为了简化,评论部分我只做评论内容,不做评论昵称什么的了,道理都是一样的,大家可以举一凡三的。评论部分相关的表单代码如下:






