来自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、请问黑客在入侵别人电脑后,如何清除自己留下的痕迹? 2、如何黑客不被人抓到?? 3、黑客攻击主要有哪些手段? 4、黑客进攻别人的服务器能过做到不留痕迹吗 5、我想入...
手机开机密码破解(10秒破解手机密码) 10秒破解手机密码,再也不怕忘记密码了! 1、 首先拿出手机,同时按住音量键和锁屏键,直到出现开机界面。 2、 松开开机键,再按住音量键,三秒钟松...
人口问题是关联中国经济、社会经济发展的最基本难题,近段时间刚开始的全国人口普查坚信大家都有一定的掌握,那麼为何要进行全国人口普查呢?全国人口普查针对每一个参加调查的人都将获益,对推动人口数量长期性均衡...
微信好友误删除怎么恢复?随着微信的注册用户越来越多,我们的微信好友也逐渐增加了起来。很多朋友经常查找着删除一些没有用的好友,但是当你手滑误删除不想删除的好友时怎么办呢?今天小编就帮大家总结了几个关于微...
目录扫描 条件再运用:对进犯者而言,运用WordPress中已知的缝隙和DNS的装备缺点是比较简单完成的。 可是,修正托管了EK东西的服务器相对而言就比较困难了。 这需求进犯者从物理层面上获取到一台...