快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用DATALIST控件开发一个简朴的留言本程序

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<Html>
<Body BgColor="White">
<H3>DataList 控制元件<HR></H3>
<div id=Message runat=server></div>
<Form runat="server">
<table cellspacing=0 cellpadding=0 width="776" border=0>
<tr>
<td width="2%"><img height=20 src="images/up.gif" width=16></td>
<td width="98%" bgcolor=#333333 align="center"><font face=宋体 color=#ffffcc><b>留言本</b></font></td>
</tr>
</table>
<asp:DataList id="DataList1" runat="server"
Border="1" BorderColor="Black"
CellPadding="2" CellSpacing="0"
HeaderStyle-BackColor="#888888"
ItemStyle-BackColor="#eeeeee"
SelectedItemStyle-BackColor="#ffffff"
HeaderTemplate-ColSpan="3"
OnItemCommand="DataList_ItemCommand"
Width="776">

<!--编号模版-->
<template name="HeaderTemplate" >
<asp:LinkButton id="Tosay" runat="server" Text="我要发言" ForeColor="#ffffff"/>
<a href="temp.aspx"><font color="#ffffff">刷新界面</font></a>
<asp:LinkButton id="Mange" runat="server" Text="治理留言" ForeColor="#ffffff"/>
</template>


<!--内容模版-->
<template name="ItemTemplate">
<%# Container.DataItem("book_id")%>
<%# Container.DataItem("content")%>
<asp:LinkButton id="Detail" runat="server" Text="查看具体内容" ForeColor="#333333"/>
</template>

<!--查看留言模版-->
<template name="SelectedItemTemplate">
编号: <%# Container.DataItem("book_id")%><BR>
发言人: <%# Container.DataItem("username")%><BR>
时间: <%# Container.DataItem("post_time")%><BR>
内容: <%# Container.DataItem("content")%><BR>
<div align="right"><asp:LinkButton id="Title" runat="server" Text="关闭" ForeColor="#333333"/></div>
</template>

</asp:DataList>
<table id="foot" cellspacing=0 cellpadding=0 width="776" border=0 runat="server" visible="false">
<tr>
<td bgcolor=#000000>
<table cellspacing=1 cellpadding=3 width="100%" border=0>
<tr bgcolor=#ffffff>
<td>大名:<Input Type="Text" id="Username" Size=20 runat="server" /><br>
留言:<Input Type="Text" id="Content" Size=20 runat="server" />
<asp:LinkButton id="save" runat="server" Text="保存" OnClick="LinkButton1_Click" AutoPostBack/><br>
<asp:LinkButton id="close" runat="server" Text="关闭" OnClick="LinkButton2_Click"/></td>
</tr>
</table>
</td>
</tr>
</table>

<table cellspacing=0 cellpadding=0 width="776" border=0>
<tr>
<td width="98%" bgcolor=#333333 align="center"><font face=宋体 color=#ffffcc><b>    留言本</b></font></td>
<td width="2%"><img height=20 src="images/dn.gif" width=16></td>
</tr>
</table>




</Form>
<hr>

<asp:Label id="Label1" runat="server" />
</Body>
</Html>

<script Language="VB" runat="server">

Sub Page_Load(sender As Object, e As EventArgs)
DataList1.DataSource = CreateDataView( "data.mdb", "guestbook" )
DataList1.DataBind()
End Sub

Function CreateDataView( Db As String, Table As String ) As DataView
Dim Provider, ConnStr, SQL As String
Provider = "Microsoft.Jet.OLEDB.4.0;"
ConnStr = "Provider=" & Provider & _
"Data Source=" & Server.MapPath( Db )
Dim Cmd As ADODataSetCommand
Cmd = New ADODataSetCommand( "Select * from " & Table &" Order By post_time DESC", ConnStr )
Dim ds As DataSet = new DataSet()
Cmd.FillDataSet(ds, Table)
CreateDataView = new DataView(ds.Tables(Table))
End Function

Sub DataList_ItemCommand(sender As Object, e As DataListCommandEventArgs)
select case e.CommandSource.Text
case "我要发言"
foot.Visible = true

case "治理留言"

case "查看具体内容"
DataList1.SelectedIndex = e.Item.ItemIndex \\\'查看留言模版被选中
case "关闭"
DataList1.SelectedIndex = -1
end select
DataList1.DataSource = CreateDataView( "data.mdb", "guestbook" )
DataList1.DataBind()
End Sub
Sub LinkButton2_Click(sender As Object, e As EventArgs)
foot.Visible = false
End Sub

Sub LinkButton1_Click(sender As Object, e As EventArgs)
Dim ConnStr, SQL As String
SQL = "Insert Into GuestBook (userName,post_time,content) Values (\\\'"& Username.Value &"\\\',\\\'"& DateTime.Now &"\\\',\\\'"& Content.Value &"\\\')"
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath( "data.mdb" )
Dim Cmd As ADOCommand = New ADOCommand( SQL, ConnStr )
Cmd.ActiveConnection.Open()
Cmd.Execute()
Message.InnerHtml = "<B>留言成功!</B>"
foot.Visible = false
Page.Navigate("temp.aspx")
End Sub
</script>

研究了好长时间,可最后那句Page.Navigate("temp.aspx")还是达不到及时刷新的效果:(,看精华区有篇C#编的是在PAGE_LOAD事件里面接收REQUEST.FORM对象后INSERT立刻更新DATESET,不知道我这个怎么弄好...
返回类别: 教程
上一教程: 时间、空间性能极优的ASP无组件上传类
下一教程: 在ASP中用集合成批操作数据库

您可以阅读与"用DATALIST控件开发一个简朴的留言本程序"相关的教程:
· 用ASP开发一个在线考试程序(五)
· 用ASP开发一个在线考试程序(七)
· 用ASP开发一个在线考试程序(九)
· 用ASP开发一个在线考试程序(九)
· 用ASP开发一个在线考试程序(四)
    微笑服务 优质保证 索取样品