(读者可打开【光盘】|【源文件】|【实例 83 】|【 83.4.txt 】文件,直接复制) ( 7 )定义“ CpUpdate_Click ”过程,用于在单击完【更新购物车】按钮后更新购物车中的小计。 Sub CpUpdate_Click(sender As object, e As EventArgs) Dim i,j As Integer Dim _item As DataGridItem j=0 For i=0 To ByGrid.Items.Count-1 _item = ByGrid.Items(i) Dim CountText As TextBox = _item.FindControl("Sltxt") Cpbt.Rows(i)(3) = CountText.Text Cpbt.Rows(i)(4) = Cpbt.Rows(i)(2) * Cpbt.Rows(i)(3) Next CpTotal ByGrid.DataSource = New DataView(Cpbt) ByGrid.DataBind() End Sub (读者可打开【光盘】|【源文件】|【实例 83 】|【 83.5.txt 】文件,直接复制) ( 8 )定义“ ClearBy_Click ”过程,用于客户单击【清空购物车】按钮后执行该过程。 Sub ClearBy_Click(sender As object, e As EventArgs) Dim i As Integer For i=0 to CpView.Count-1 CpView.Delete(i) Next CPCOUNT.text=0 CpView.RowFilter = "" ByGrid.DataSource = CpView ByGrid.DataBind() End Sub (读者可打开【光盘】|【源文件】|【实例 83 】|【 83.6.txt 】文件,直接复制) ( 9 )定义“ Page_Load ”过程,该过程用于当客户单击“更新购物车”按钮时,显示打开购物车页面所要执行的代码。 Sub Page_Load(Sender As Object,e As EventArgs) If Session("Cpshop") Is Nothing Then CrCpdatatable Session("Cpshop") = Cpbt Else Cpbt = Session("Cpshop") End If Cpview = New DataView(Cpbt) If (Not IsPostBack) Then If Session("USENAME")="" or Session("USENAME")=nothing Then response.Redirect("nologin.htm") End If AddCpbt CpTotal ByGrid.DataSource = Cpview ByGrid.DataBind() End If End Sub (读者可打开【光盘】|【源文件】|【实例 83 】|【 83.7.txt 】文件,直接复制) 程序说明: 当 Session("Cpshop") 为空值,即首次建立购物车时,建立的 Session("Cpshop") 存储结构与临时表 Cpbt 的结构相同。当 Session("Cpshop") 非空值时,则将 Session("Cpshop") 映射给 Cpbt 临时表。当第一次装载页面时(代码为 Not IsPostBack ),验证 Session("USENAME") 是否为空值,即用户是否已经登录。如果是空值,则返回到“ nologin.htm ”页面中;如果非空,则查询用户单击购物产品的相关数据并添加到日程表临时表中,然后显示到数据网络“ ByGrid ”中。 ( 10 )设计“ nologin.htm ”页面。新建一个空白的 HTML 文档,在设计视图中进行如图 83-11 所示的设计,其中关闭窗口的超级链接为“ javascript:window.close() ”,将其保存为“ nologin.htm ”。 步骤三 将程序绑定到页面中 ( 1 )在代码视图中找到代码 <asp:TextBox id="Sltxt" width="50" runat="server" /> ,将其改为 <asp:TextBox id="Sltxt" width="50" runat="server" Text='<%#Container. DataItem("SL")% >' /> 。 提示:其实就是绑定临表中的字段“ SL ”到文本框架“ Sltxt ”中。 ( 2 )刷新购物车定义响应过程。在设计视图中,用鼠标右键单击“刷新购物车”按钮,在弹出的快捷菜单中选择【编辑标签( E ) <asp : bottun> 】菜单项。然后在弹出的【标签编辑器— Button 】窗口中选择【事件】下的【 OnClick 】事件,并在“ Button — OnClick ”文本区域中输入“ CpUpdate_Click ”响应过程,如图 83-12 所示。单击【确定】按钮完成对【刷新购物车】按钮的定义。 |