来自Active.com.cn
Page.IsPostBack属性的一个应用,就是取代ASP中的RS(Remote scripting)技术。至于RS的基本概念和用法我已经在asp
版里面有很多介绍了,它主要的优势就是在不刷新当前页面的情况下和服务器端进行通信。但是由于它的底层是使用了
java技术,所以它用起来还是显得较为烦琐,下面我就将介绍在ASP+中如何利用Page.IsPostBack来取代RS技术。
按照我的习惯是喜欢用具体的例子来解释问题,所以这次还是使用一个简单的实例来说明问题。下面这个例子中,将使
用一个Products.aspx程序,它主要有两个服务器端控件(Server-side control),这是asp+里面引入的新的控件编程方
式,一个是一个下拉框控件--'mudCategories',另外一个是列表框控件--'mudProducts'。这个例子将演示,列表框
中的内容将跟随下拉框中内容的改变而改变,为了大家重现的方便,我将使用SQL Server中自带的数据库例子来实现。
Products.aspx代码如下:
代码:
---------------------------------------------------------------------
<%@ Import Namespace="System.Data"%><%@ Import Namespace="System.Data.ADO"%><script language="VB"
runat="server">Sub Page_Load (SourceObj as Object, EveArg as EventArgs)If Not Page.IsPostBack Then
Dim mudCommand As ADODataSetCommand Dim mudConnection As ADOConnection Dim dSet As New DataSet
Dim strSQL as String Dim connStr as String strSQL = "SELECT CategoryID, CategoryName
From Categories" connStr = "Provider = SQLOLEDB; Data Source=test; Initial Catalog=Northwind;
User ID=sa; password=;" mudConnection = New ADOConnection(connStr) mudCommand = New
ADODataSetCommand(strSQL, mudConnection) mudCommand.FillDataSet
(dSet, "Categories") mudCategories.DataSource = dSet.Tables("Categories").DefaultView
mudCategories.DataBind()End IfEnd SubSub displayProducts (Source as Object, EveArg as EventArgs) Dim
mudCommand As ADODataSetCommand Dim mudConnection As ADOConnection Dim dSet As New DataSet Dim
strSQL as String Dim connStr as String connStr = "Provider = SQLOLEDB; Data Source=test; Initial
Catalog=Northwind; User ID=sa; password=;" strSQL = "Select ProductID, ProductName From
Products" strSQL = strSQL & " WHERE CategoryID = " & mudCategories.SelectedItem.Value
mudConnection = New ADOConnection(connStr) mudCommand = New ADODataSetCommand(strSQL,
mudConnection) mudCommand.FillDataSet(dSet, "Products") mudProducts.DataSource =
dSet.Tables("Products").DefaultView mudProducts.DataBind()End Sub </script><html><form
name="mudForm" runat="server"> 产品目录: <asp:DropDownList id="mudCategories" runat="server"
DataTextField="CategoryName" DataValueField="CategoryID" AutoPostBack="true"
OnSelectedIndexChanged="displayProducts"/>产品: <asp:ListBox id="mudProducts" SelectionMode="Multiple"
DataValueField="ProductID" DataTextField="ProductName" runat="server" /></html>
----------------------------------------------------------------------
从例子程序可以看到,其中显然是使用了服务器端控件的下拉框OnChange事件配合AutoPostBack和Page.IsPostBack属性
就可以很简单和清晰的实现了以前在asp中烦琐的RS实现 *** 。
呵呵,希望大家从上面的这个例子中有所收获。
新华社北京1月12日电 题:论美国“灯塔”的倒掉 新华社记者吴黎明 听说,自诩为西方民主标杆的美国“灯塔”倒掉了。听说而已,我没有亲见,但前几日全世界都通过视频直播看到“灯塔”的象征—...
互联网技术的飞速发展,改变了人们的生活质量和效率,从科技产品转向了科技软件。其中最明显的就是社交网络。从古代的飞鸽到电报,再到电话和今天的互联网电话,即使在两个星球上,人们也可以很容易地进行交流。当然...
男闺蜜是什么意思(你有男闺蜜吗)很多人说: “男孩和女孩永远没有纯洁的友谊”。但是,到目前为止,你肯定已经知道这是不正确的。有很多女人有亲密的男性朋友,反之亦然。 人脑的制造方式使人们寻求与周围人建...
中新网北京12月26日电(李京泽 梁晓辉)历经三次审议,十三届全国人大常委会第二十四次会议26日表决通过长江保护法,将于2021年3月1日起施行。 长江保护法包括总则、规划与管控、资源保护、...
LOL怎么投降投票,LOL怎么发起投降。在游戏里面,当我们被对面虐时!当我们被队友的智商所感动时!当我们被一直被自己吊打的对线选手反虐时!我们第一个想法一定是尽早的结束这场糟糕的游戏,但是我们又不知道...
黑客非正常如何找资源相关问题 苹果手机可以装黑客桌面吗相关问题 什么应用可以黑客 黑电脑的简单方法(最简单电脑装微信方法)...