JavaScript与Web Service组合实现无刷新交互这篇文章我已经写得比较清楚了.客户端的 JavaScript怎么与服务端的Web Service进行通信达到无刷新的AJAX功能.今天我将接着这里给大家写一篇扩展性文章.希望对大家有所帮助.

     少说话多做事,我们还是直奔主题吧!先看看今天的扩展性文章涉及到的东东.
     1.建立ASP.NET AJAX网站项目
     2.建立MSSQL数据库test,并建立UserInfo表
     3.建立与UserInfo表对应的实体类UserInfo,并定义好成员属性(get,set)
     4.建立UserInfoCompontent组件类,封装数据的查询功能
     5.建立Web Service调用UserInfoCompontent类的方法(因为Web Service才是与JavaScript交互的组件层)
     6.建立ASPX页面,掉用UserInfoCompontent把数据库的数据显示出来.
     7.在上一步建立的ASPX页面里定义与Web Service交互的JavaScript方法,处理发送请求和响应请求的相关操作.

一、二:第一、二步就不多说了吧,这两步要是就有问题的话我建议你可以转行干别的工作去了。下面是建立表的脚本:
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[UserInfo]'and OBJECTPROPERTY
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   (id,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   N
'IsUserTable'= 1)
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   
drop table [dbo].[UserInfo]
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   
GO
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   
CREATE TABLE [dbo].[UserInfo] (
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userId] [int] IDENTITY (11NOT NULL ,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userName] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userSex] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userAge] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userTelephone] [varchar] (11) COLLATE Chinese_PRC_CI_AS NULL ,
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
[userAddress] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   ) 
ON [PRIMARY]
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   
GO
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库

三:建立UserInfo类并定义其成员与UserInfo表对应,设置其属性(get,set),UserInfo类的定义如下:
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库public class UserInfo

四:建立UserInfoCompontent,封装数据的查询功能,详细定义如下所示:

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库public class UserInfoComponent

五:建立Web Service调用UserInfoCompontent类的方法(因为Web Service才是与JavaScript交互的组件层)

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库[ScriptService]

六:建立ASPX页面Default.aspx并在页面上拽一个GridView控件,调用UserInfoCompontent把数据库的数据显示出来.

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库UserInfoComponent user = new UserInfoComponent();
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
protected void Page_Load(object sender, EventArgs e)
七:在上一步建立的ASPX页面里定义与Web Service交互的JavaScript方法,处理发送请求和响应请求的相关操作.这一步就是关键了。实现了在客户断通过JavaScript于Web Servie通信,查询数据库并返回查询结果到页面上。
    同上一篇文章一样,需要在页面上放置一个ScriptManager控件,应该他是ASP.NET AJAX的核心。每一个ASP.NET AJAX程序的页面上都必须要有一个ScriptManager控件。并指向先前我门定义好的Web Service。如下:
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库<asp:ScriptManager ID="ScriptManager1" runat="server">
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库        
<Services>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库          
<asp:ServiceReference Path="UserInfoWebService.asmx" InlineScript="true" />
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库        
</Services>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库    
</asp:ScriptManager>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库

下面我们来下实现通信和处理请求及处理响应的客户端JavaScript方法;
在定义方法前我门先在页面上写一个文本框和一个按扭。文本框提供数据输入,按扭执行向服务端方法请求查询数据库操作。html代码如下:

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库请输入ID:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库
<input id="Button1" type="button" value="查询" onclick="showUserInfo()" />
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库

现在该是写JavaScript方法的时候了。

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库<script language="javascript" type="text/javascript">
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库
function showUserInfo()

这里也许会有人会问到,你上面的onGetUserInfoSuccess()方法里所用到的id,name,sex....这些是那里来的呢?先好象没定义啊。是啊,我先前没定义他门呢,他是处理所查询到的数据库的数据的显示操作的,这到最后来,说来就来吧,在html里下一个表格或是从工具箱里拽一个表格控件出来。适当的调整下宽度,如下:

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库<table style="width: 540px" border="1" bordercolor="#663333" cellpadding="1" cellspacing="0">
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库
<tr>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 38px;">编号</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 38px;">姓名</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 45px;">性别</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 35px;">年龄</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 82px;">电话</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td style="text-align: center; width: 79px;">地址</td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库  
</tr>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库  
<tr>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="id"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="name"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="sex"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="age"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="tele"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库      
<td id="address"></td>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库   
</tr>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库
</table>
JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库

JavaScript与Web Service组合实现无刷新交互(扩展)--查询数据库

本文示例源码下载


相关文章:

  • 2022-12-23
  • 2021-08-02
  • 2022-01-12
  • 2022-12-23
  • 2021-10-07
  • 2022-12-23
猜你喜欢
  • 2022-01-01
  • 2022-12-23
  • 2021-07-22
  • 2021-12-11
  • 2021-10-24
  • 2022-02-09
  • 2021-12-19
相关资源
相似解决方案