| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3688 人关注过本帖
标题:[原创]JS不刷新页面与ASP通信实现用户名检测
只看楼主 加入收藏
conn
Rank: 2
等 级:新手上路
威 望:5
帖 子:420
专家分:0
注 册:2005-11-27
收藏
得分:0 
呵呵,是啊,LZ老大好厉害哦,的确很想知道他是怎么学的XML,那玩意厉害啊,谢谢楼上的斑竹响应群众的呼声,嘿嘿。

我是新手,但我很虚心,对我发的问题请不要取笑,谢谢
2005-12-26 20:00
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
不知griefforyou版主有没有关于AJAX方面的资料或教程?能否提供一下谢谢。
2005-12-26 21:00
linuxpluto
Rank: 4
等 级:贵宾
威 望:13
帖 子:889
专家分:23
注 册:2005-8-14
收藏
得分:0 

关键代码
function checkbyajax(){
Username=document.getElementById("Username").value;
if(Username=="") {alert('请先输入用户名!');return}

//AjAX其实就是 JavaScript+XMLHTTP
//创建XMLHTTP对象
var xmlhttp;
//for ie
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.4.0");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlhttp = null;
}
}
}
//for firefox
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}

if(xmlhttp==null) {alert('你的浏览器不支持XMLHTTP对象,无法采用AJAX技术!');return;}

xmlhttp.open("GET","CheckUser.asp?ReturnType=text&Username=" + Username,false);
xmlhttp.send(null);
var rtnText = xmlhttp.responseText;
showResult(rtnText);
xmlhttp=null;
}
Ajax不是一种技术。实际上,它由几种蓬勃发展的技术以新的强大方式组合而成。Ajax包含:

  • 基于CSS标准的表示;
  • 使用Document Object Model进行动态显示和交互;
  • 使用XMLHttpRequest与服务器进行异步通信;
  • 使用JavaScript绑定一切。

这非常好,但为什么要以Ajax命名呢?其实术语Ajax是由Jesse James Garrett创造的,他说它是“Asynchronous JavaScript + XML的简写”。
下面是使用Ajax可以完成的功能:

  • 动态更新购物车的物品总数,无需用户单击Update并等待服务器重新发送整个页面。
  • 提升站点的性能,这是通过减少从服务器下载的数据量而实现的。例如,在Amazon的购物车页面,当更新篮子中的一项物品的数量时,会重新载入整个页面,这必须下载32K的数据。如果使用Ajax计算新的总量,服务器只会返回新的总量值,因此所需的带宽仅为原来的百分之一。
  • 消除了每次用户输入时的页面刷新。例如,在Ajax中,如果用户在分页列表上单击Next,则服务器数据只刷新列表而不是整个页面。
  • 直接编辑表格数据,而不是要求用户导航到新的页面来编辑数据。对于Ajax,当用户单击Edit时,可以将静态表格刷新为内容可编辑的表格。用户单击Done之后,就可以发出一个Ajax请求来更新服务器,并刷新表格,使其包含静态、只读的数据。

一切皆有可能!但愿它能够激发您开始开发自己的基于Ajax的站点。


吃的比猪还差,干的比驴还累,起的比鸡还早,睡得比小姐还晚,挣得比民工还少,看起来比谁都好——苦命的人.人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己
2005-12-27 06:03
linuxpluto
Rank: 4
等 级:贵宾
威 望:13
帖 子:889
专家分:23
注 册:2005-8-14
收藏
得分:0 
这个东西很实用~
比如,http协议是无连接状态的,当一个表单提交了以后,这个页面所有表单的值都清空了~
但现在有个要求~当选择了一个下拉列表(部门)以后,下一个下拉列表显示的是职工,两个下拉列表都要和数据库连接~这时候,有多少个部门,由数据库决定,每个部门多少员工,也由数据库决定~问题是,表单一提交下拉列表就清空了~如果用asp写的话,实现不了,必须和javascript一起用才可以实现~而且实现起来很麻烦,n多判断,n多response~即使实现了,当更换部门的时候页面就刷新一次~当该页面内容很多,就麻烦了~
如果用asp.net是很容易的,就是一个表单是事件~因为asp.net在http协议无连接状态这方面处理的很好~
有了这个技术,关键是XMLHTTP对象代码就简单多了~把http协议模拟成一个有连接状态
asp和javascript用户的福音哦
顶哈

吃的比猪还差,干的比驴还累,起的比鸡还早,睡得比小姐还晚,挣得比民工还少,看起来比谁都好——苦命的人.人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己
2005-12-27 06:17
conn
Rank: 2
等 级:新手上路
威 望:5
帖 子:420
专家分:0
注 册:2005-11-27
收藏
得分:0 
呵呵,感谢linuxpluto斑竹的精彩讲说,受益良多,赞!

我是新手,但我很虚心,对我发的问题请不要取笑,谢谢
2005-12-27 08:53
dreame
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:521
专家分:0
注 册:2005-10-23
收藏
得分:0 
学习中

有时候真的想放弃寂寞的等待,但她是那么的可爱!I love u forever!
2005-12-27 21:01
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
asp.net因为启用了服务器端控件技术,做两级联动菜单就非常容易。ASP做两级联动的菜单,也可以不用选一次提交一次。但必须用JavaScript全部都读出来才能实现不提交,数据少还可以多就麻烦了。
AJAX原来就是借助了XHTML技术,不过我只知道在ASP.NET程序中,已经有只靠XML的无数据库版程序。
2005-12-27 21:35
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
学习中,果然是好东西..

中国人的财富网:http://www..cn/
2005-12-27 23:52
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
Document Object Model是什么东西...

中国人的财富网:http://www..cn/
2005-12-27 23:58
szeee
Rank: 1
等 级:新手上路
帖 子:123
专家分:0
注 册:2005-5-13
收藏
得分:0 
Up 收藏

我在bbs.渐渐成长了。。。
2005-12-28 05:20
快速回复:[原创]JS不刷新页面与ASP通信实现用户名检测
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018812 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved