| 首先我们新建一个网站,在网站里面新增一般处理程序,命名为ReadData.ashx。然后在里面输入如下代码: 
 复制代码 代码如下:  using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Web.Services;
 using System.Data.SqlClient; //引入命名空间
 using System.Data;
 
 namespace 加载层
 {
 /// <summary>
 /// $codebehindclassname$ 的摘要说明
 /// </summary>
 [WebService(Namespace = "http://tempuri.org/")]
 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
 public class ReadData : IHttpHandler
 {
 
 public void ProcessRequest(HttpContext context)
 {
 //context.Response.ContentType = "text/plain";
 //context.Response.Write("Hello World");
 
 //获取外部传进来的变量值i
 int i = Int32.Parse(context.Request.QueryString["i"]);
 
 //连接数据库
 
 SqlConnection con = new SqlConnection("data source=.;user id=sa;pwd=5239898;database=librarydatabase;");
 con.Open();
 SqlDataAdapter ada = new SqlDataAdapter("select * from reader where 序号='" + i + "'", con);
 SqlCommandBuilder com = new SqlCommandBuilder(ada);
 DataSet ds = new DataSet();
 ada.Fill(ds, "reader");
 
 con.Close();
 
 //读取表中栏位为“姓名”的字段值,并传出
 
 context.Response.Write(ds.Tables["reader"].Rows[0]["姓名"].ToString());
 
 
 }
 
 public bool IsReusable
 {
 get
 {
 return false;
 }
 }
 }
 }
 
 然后我们需要新建一个JavaScript文件,命名为loaddata.js。输入如下代码:
 
 
 复制代码 代码如下:  
 /*当DOM加载完毕之后就自动为两个链接添加Click事件*/
 $("document").ready(function() {
 $("a[href=http://www.jb51.net/article/javascript]").click(function() {
 chkform();
 return false;
 })
 $("a[href=http://www.jb51.net/article/test]").click(function() {
 $("#load").css("display", "none");
 $("#mark").css("display", "none");
 return false;
 })
 });
 
 
 var chkform = function() {
 new Request({
 
 /*调用一般处理程序进行后台抓取数据并返回txt变量*/
 url: 'ReadData.ashx?i=' + $("#Text1").attr("value"),
 
 /*抓取数据成功之后*/
 onSuccess: function(txt) {
 $("#load").append("<P>" + txt + "</P>");
 
 $("#load").css("display", "block");
 $("#mark").css("display", "block");
 },
 
 /*正在抓取*/
 onRequest: function() {
 
 $("#load").append("<P>正在加载</P>");
 },
 
 /*数据加载失败*/
 onFailure: function() {
 alert('信息加载失败!');
 
 }
 }).send();
 }
 
 还没完,我们还要新增一个CSS文件,命名为main.css,深入如下样式:
 
 复制代码 代码如下:  #mark{
 width: 100%;
 background-color:White;
 position:absolute;
 left: 0px;
 top: 0px;
 height: 700px;
 filter:alpha(opacity=70);
 -moz-opacity:70;
 opacity:70;
 z-index:2;
 display:none;
 }
 #load
 {
 background-color:Gray;
 border: 1px solid #999;
 font-size: 12px;
 position:relative;
 margin:0 auto;
 margin-top:100px;
 width:200px;
 height:150px;
 z-index:99;
 display:none;
 }
 
 
 
 我们在网站的首页里面源码输入如下代码:
 
 复制代码 代码如下:  <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="加载层._Default" %>
 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head runat="server">
 <title>加载层</title>
 <link type="text/css" href="http://www.jb51.net/article/main.css" />
 
 <script type="text/javascript" src="http://www.jb51.net/article/mootools.js"></script> //记得引入这个javascript库文件
 
 <script type="text/javascript" src="http://www.jb51.net/article/jquery-1.3.1-vsdoc.js"></script> //VS支持智能提示的文件,可有可无
 
 <script type="text/javascript" src="http://www.jb51.net/article/jquery-1.3.1.js"></script> //记得引入JQuery
 
 <script type="text/javascript" src="http://www.jb51.net/article/loaddata.js"></script>
 
 </head>
 <body>
 <div>
 <a href="http://www.jb51.net/article/javascript">点击加载</a>
 <input type="text" /></div>
 <div>
 load <a href="http://www.jb51.net/article/test">试试</a>
 </div>
 <div>
 </div>
 </body>
 </html>
 
 至此完成了我们要的效果。
 效果图及DEMO一会放出。
 
 
 看上面的链接以及文本框都处于“灰色”状态,不可编辑。点击中间弹出层的链接可以回到最初状态。整个过程中页面都没有刷新!
 
 Demo下载地址:
 (编辑:宣城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |