加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP.NET中AJAX的异步加载(Demo演示)

发布时间:2020-05-11 12:56:13 所属栏目:Asp教程 来源:站长网
导读:此次的Demo是一个页面,页面上有两行字,然后后面用AJAX,使用一个下拉框去替换第一行文字[/code] 第一个是被替换的网页 !DOCTYPE htmlhtmlhead meta charset="utf-8" / title/title script type="text/javascript"var xmlHttpRequest;function createXmlH

此次的Demo是一个页面,页面上有两行字,然后后面用AJAX,使用一个下拉框去替换第一行文字[/code]

第一个是被替换的网页

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script type="text/javascript"> var xmlHttpRequest; function createXmlHttpRequest() { if (window.ActiveXObject) { xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");//IE浏览器 } else { xmlHttpRequest = new window.XMLHttpRequest();//谷歌等浏览器 } } function sendRequest() { createXmlHttpRequest();//获取对象 xmlHttpRequest.onreadystatechange = function () { if (xmlHttpRequest.readyState == 4) { if (xmlHttpRequest.status == 200) { document.getElementById("divContent").innerHTML = xmlHttpRequest.responseText; } } }; xmlHttpRequest.open("POST", "DeptHandler.ashx", true); xmlHttpRequest.send(null); } </script> <!--<script type="text/javascript"> var xmlHttpRequest; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");//IE浏览器 } else { xmlHttpRequest = new window.XMLHttpRequest();//谷歌等浏览器 } } //请求数据 function sendRequest() { createXMLHttpRequest(); xmlHttpRequest.onreadystatechange = function () { if (xmlHttpRequest.readState == 4) { if (xmlHttpRequest.status == 200) { document.getElementById("divContent").innerHTML = xmlHttpRequest.responseText; } } } xmlHttpRequest.open("POST", "DeptHandler.ashx", true); xmlHttpRequest.send(null); } </script>--> </head> <body> <div> <div> <p>这里显示部门信息</p> </div> <script type="text/javascript">sendRequest()</script> <div> <p>这里显示部门信息结束了</p> </div> </div> </body> </html>

第二个是一个类

using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace WebApplication2 { public class Dept { public int Id { get; set; } public string DeptName { get; set; } } }

然后是一个一般处理程序

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Web; namespace WebApplication2 { /// <summary> /// DeptHandler 的摘要说明 /// </summary> public class DeptHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { //这里的AJAX进行了三秒的延迟 Thread.Sleep(3000); List<Dept> depts = new List<Dept> { new Dept(){Id=1,DeptName="财务部"}, new Dept(){Id=2,DeptName="研发部"}, new Dept(){Id=3,DeptName="市场部"} }; StringBuilder sb = new StringBuilder(); sb.AppendLine("<select>"); foreach (var item in depts) { sb.AppendLine($"<option id = {item.Id}>{item.DeptName}</option>"); } sb.AppendLine("</select>"); context.Response.ContentType = "text/plain"; context.Response.Write(sb); } public bool IsReusable { get { return false; } } } }

效果图

AJAX有三秒的延迟加载

前三秒

后三秒

到此这篇关于ASP.NET中AJAX的异步加载(Demo演示)的文章就介绍到这了,更多相关ASP.NET中AJAX异步加载内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读