📄 index.aspx
字号:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script language="VB" runat="server">
Dim conn As OleDbConnection '定义Connection对象变量
Sub Page_Load(Sender As Object, E As EventArgs)
conn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("wwwlink.mdb")) '建立Connection对象
If Not IsPostBack Then
Call BindData() '绑定数据
End If
End Sub
'单击编辑时,执行该事件过程。
Sub MyDataGrid_Edit(Sender As Object, E As DataGridCommandEventArgs)
MyDataGrid.EditItemIndex = CInt(E.Item.ItemIndex)
Call BindData() '绑定数据
End Sub
'单击取消时,执行该事件过程。
Sub MyDataGrid_Cancel(Sender As Object, E As DataGridCommandEventArgs)
MyDataGrid.EditItemIndex = -1
Call BindData() '绑定数据
End Sub
'单击更新时,执行该事件过程。
Sub MyDataGrid_Update(Sender As Object, E As DataGridCommandEventArgs)
'获取客户填写的值
Dim txtSiteName,txtURL,txtIntro As textbox '声明文本框控件变量
txtSiteName=e.Item.FindControl("theSiteName")
txtURL=e.Item.FindControl("theURL")
txtIntro=e.Item.Cells(2).Controls(0)
Dim txtGrade As DropDownList '声明下拉列表框
txtGrade=e.Item.FindControl("theGrade")
'建立Command对象
Dim strSql As String
strSql="Update link Set sitename= @sitename,URL= @URl,intro= @intro,grade= @grade,submit_date= @submit_date Where link_id= @link_id"
Dim cmd As New OleDbCommand(strSql, conn)
'给参数赋值
cmd.Parameters.Add(New OleDbParameter("@sitename", OleDbType.Char,10))
cmd.Parameters("@sitename").Value=txtSiteName.Text
cmd.Parameters.Add(New OleDbParameter("@URL", OleDbType.Char,200))
cmd.Parameters("@URL").Value=txtURL.Text
cmd.Parameters.Add(New OleDbParameter("@intro", OleDbType.VarChar))
cmd.Parameters("@intro").Value=txtIntro.Text
cmd.Parameters.Add(New OleDbParameter("@grade", OleDbType.Integer))
cmd.Parameters("@grade").Value=CInt(txtGrade.SelectedItem.Text)
cmd.Parameters.Add(New OleDbParameter("@submit_date", OleDbType.Date))
cmd.Parameters("@submit_date").Value=Now()
cmd.Parameters.Add(New OleDbParameter("@link_id", OleDbType.Integer))
cmd.Parameters("@link_id").Value=MyDataGrid.DataKeys(CInt(E.Item.ItemIndex))
'下面执行更新操作
Dim Exp As Exception
Try
conn.open()
cmd.ExecuteNonQuery() '执行更新操作
conn.close()
Catch Exp
message.Text="发生错误,没有正常更新记录"
End Try
'重新绑定
MyDataGrid.EditItemIndex = -1
Call BindData() '绑定数据
End Sub
'单击删除时执行该事件过程
Sub MyDataGrid_Delete(Sender As Object, E As DataGridCommandEventArgs)
'建立Command对象
Dim strSql As String
strSql="Delete from link Where link_id=" & MyDataGrid.DataKeys(CInt(E.Item.ItemIndex))
Dim cmd As New OleDbCommand(strSql, conn)
Dim Exp As Exception
Try
conn.open()
cmd.ExecuteNonQuery() '执行删除操作
conn.close()
Catch Exp
message.Text="发生错误,没有正常删除记录"
End Try
'重新绑定
MyDataGrid.EditItemIndex = -1
Call BindData() '绑定数据
End Sub
'该过程用来分页
Sub MyDataGrid_Page(sender As Object, e As DataGridPageChangedEventArgs)
MyDataGrid.CurrentPageIndex = e.NewPageIndex
Call BindData() '绑定数据
End Sub
'该过程用来排序
Sub MyDataGrid_Sort(Sender As Object, E As DataGridSortCommandEventArgs)
MySortField.Text=E.SortExpression '将选定的排序字段存放到Label控件中
Call BindData() '绑定数据
End Sub
'当查找记录时,执行该事件过程
Sub Enter_Click(Sender As Object, E As EventArgs)
'查找记录时,绑定数据时会自动根据keyword文本框中的关键字选择相应的数据
Call BindData()
End Sub
'数据绑定子程序,供其它过程调用
Sub BindData()
'建立SQL语句字符串,默认显示全部内容,也可以根据关键词显示相应网站内容
Dim strSql As String
If Trim(keyword.Text)="" OR Trim(keyword.text)="全部" Then
strSql="Select * From link"
Else
strSql="Select * From link Where sitename Like '%" & Trim(keyword.Text) & "%'"
End If
'直接建立DataAdapter对象
Dim adp As New OleDbDataAdapter(strSql, conn)
Dim ds As New DataSet() '建立DataSet对象
adp.Fill(ds, "link") '填充DataSet
ds.Tables("link").DefaultView.Sort=MySortField.Text '从Label控件中指定排序字段
MyDataGrid.DataSource=DS.Tables("link").DefaultView '指定数据源
MyDataGrid.DataBind() '执行绑定
End Sub
</script>
<html>
<body>
<h4 align="center">网络导航</h4>
<form runat="server">
请输入关键字<asp:textbox id="keyword" Text="全部" runat="server"/>
<asp:button id="enter" onClick="enter_click" Text=" 查 找 " runat="server"/>
<a href="add.aspx">插入记录</a>
<ASP:DataGrid id="MyDataGrid" Width="100%" HeaderStyle-BackColor="#aaaadd" OnEditCommand="MyDataGrid_Edit" OnCancelCommand="MyDataGrid_Cancel" OnUpdateCommand="MyDataGrid_Update" OnDeleteCommand="MyDataGrid_Delete" DataKeyField="link_id" AllowPaging="True" PageSize="5" OnPageIndexChanged="MyDataGrid_Page" PagerStyle-HorizontalAlign="Right" PagerStyle-Mode="NumericPages" AllowSorting="True" OnSortCommand="MyDataGrid_Sort" AutoGenerateColumns="false" runat="server">
<Columns>
<asp:TemplateColumn HeaderText="网站名称" SortExpression="sitename">
<ItemTemplate>
<asp:HyperLink Text='<%# Container.DataItem("sitename") %>' NavigateUrl='<%# "particular.aspx?link_id=" & Container.DataItem("link_id") %>' Target="_blank" runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:Textbox id="theSiteName" Size="15" Text='<%# Container.DataItem("sitename") %>' runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="网站地址" SortExpression="URL">
<ItemTemplate>
<asp:HyperLink Text='<%# Container.DataItem("URL") %>' NavigateUrl='<%# "http://" & Container.DataItem("URL") %>' Target="_blank" runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:Textbox id="theURL" Size="15" Text='<%# Container.DataItem("URL") %>' runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn HeaderText="网站简介" DataField="intro" SortExpression="intro"/>
<asp:TemplateColumn HeaderText="网站评分" SortExpression="grade" ItemStyle-HorizontalAlign="center">
<ItemTemplate>
<asp:label Text='<%# Container.DataItem("grade") %>' runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:dropdownlist id="theGrade" SelectedIndex='<%# Container.DataItem("grade")-1 %>' runat="server">
<asp:listitem >1</asp:listitem>
<asp:listitem >2</asp:listitem>
<asp:listitem >3</asp:listitem>
<asp:listitem >4</asp:listitem>
<asp:listitem >5</asp:listitem>
</asp:dropdownlist >
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn EditText="编辑" CancelText="取消" UpdateText="更新" ItemStyle-Wrap="false"/>
<asp:ButtonColumn Text="删除" CommandName="Delete" ItemStyle-Wrap="false"/>
</Columns>
</ASP:DataGrid>
<asp:Label id="MySortField" visible="False" text="link_id" runat="server"/>
<asp:Label id="message" runat="server"/>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -