index.aspx
来自「《ASP.NET C#程序设计案例教程》」· ASPX 代码 · 共 153 行
ASPX
153 行
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Xml.Xsl" %>
<%@ Import Namespace="System.Data" %>
<script language="VB" runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
If Not Page.IsPostBack Then
Call myDataBind()
End If
End Sub
'下面的函数用来插入记录,其实就是增加一个节点
Sub Enter_Click(Sender As Object, E As EventArgs)
'读取XML文件
Dim doc As XmlDocument = New XmlDocument() '建立XmlDocument对象
Dim elemGuest,elemItem As XmlElement '定义两个元素变量
doc.Load(Server.MapPath("guest.XML")) '载入XML文件
'首先建立一个节点
elemGuest = doc.CreateElement("guest")
'下面依次添加每一个子节点
'添加记录编号id
elemItem = doc.CreateElement("id") '生成一个子节点
elemItem.InnerText=System.GUID.NewGUID().ToString '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加主题title
elemItem = doc.CreateElement("title") '生成一个子节点
elemItem.InnerText=txtTitle.Text '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加内容body
elemItem = doc.CreateElement("body") '生成一个子节点
elemItem.InnerText=txtBody.Text '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加留言人name
elemItem = doc.CreateElement("name") '生成一个子节点
elemItem.InnerText=txtName.Text '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加留言人E-mail
elemItem = doc.CreateElement("email") '生成一个子节点
elemItem.InnerText=txtEmail.Text '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加留言时间submit_date
elemItem = doc.CreateElement("submit_date") '生成一个子节点
elemItem.InnerText=Now() '给该子节点赋值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'添加回复内容reback
elemItem = doc.CreateElement("reback") '生成一个子节点
elemItem.InnerText="" '给该子节点赋值,这里赋了空值
elemGuest.AppendChild(elemItem) '将该子节点添加到guest节点中
'该节点添加到XML文档中
doc.DocumentElement.AppendChild(elemGuest)
'保存XML文档
doc.Save(Server.MapPath("guest.XML"))
'重新绑定数据
Call myDataBind()
'因为本留言本根本不需要保留状态,所以将所有文本框设为空,这样可以防止重复提交。
txtTitle.Text=""
txtBody.Text=""
txtName.Text=""
txtEmail.Text=""
End Sub
'下面的函数专门用来绑定数据
Sub myDataBind()
Dim ds As New DataSet() '建立DataSet对象
ds.ReadXML(Server.Mappath("guest.xml")) '读取XML文件
ds.Tables(0).DefaultView.Sort="submit_date Desc" '设定排序字段
MyRepeater.DataSource=ds.Tables(0).DefaultView '指定数据源
MyRepeater.DataBind() '执行绑定
End Sub
</script>
<HTML>
<head>
<title>我的留言板</title>
<link rel="stylesheet" href="guest_style.css">
</head>
<body >
<h1 align="center">我的留言板</h1>
<center>
<table border="0" width="80%" bgcolor="#203F80" align="center">
<form runat="server">
<tr>
<td><font color=white>主题:</font></td>
<td>
<asp:textbox id="txtTitle" columns="60" runat="server"/>
<asp:RequiredFieldValidator id="require1" ControlToValidate="txtTitle" ErrorMessage="主题不能为空" runat="server"/>
</td>
</tr>
<tr>
<td><font color=white>内容:</font></td>
<td>
<asp:Textbox id="txtBody" Textmode="multiline" columns="60" rows="4" runat="server"/>
</td>
</tr>
<tr>
<td><font color=white>姓名:</font></td>
<td>
<asp:textbox id="txtName" runat="server"/>
<asp:RequiredFieldValidator id="require2" ControlToValidate="txtName" ErrorMessage="姓名不能为空" runat="server"/>
</td>
</tr>
<tr>
<td><font color=white>email:</font></td><td>
<asp:textbox id="txtEmail" columns="50" runat="server"/>
</td>
</tr>
<tr>
<td></td>
<td>
<asp:button id="Enter" text="提 交" onclick="Enter_Click" runat="server" />
</td>
</tr>
</form>
</table>
<p>
<asp:Repeater id="MyRepeater" runat="server" >
<ItemTemplate>
<table width="80%" bgcolor="#FFFFFF" align="center">
<tr>
<td width="30%">主题</td>
<td><%# Container.DataItem("title") %></td>
</tr><tr>
<td >内容</td>
<td><%# Container.DataItem("body") %></td>
</tr><tr>
<td >留言人</td>
<td><asp:HyperLink Text='<%# Container.DataItem("name") %>' NavigateUrl='<%# "mailto:" & Container.DataItem("email") %>' runat="server"/></td>
</tr><tr>
<td>时间</td>
<td><%# Container.DataItem("submit_date") %></td>
</tr><tr>
<td><asp:HyperLink Text="回复" NavigateUrl='<%# "readd.aspx?id=" & Container.DataItem("id") %>' runat="server"/></td>
<td><font color="blue"><%# Container.DataItem("reback") %></font></td>
</tr><tr>
<td></td>
<td><asp:HyperLink Text="删除" NavigateUrl='<%# "delete.aspx?id=" & Container.DataItem("id") %>' runat="server"/></td>
</tr>
</table>
</ItemTemplate>
<SeparatorTemplate>
<hr width="80%">
</SeparatorTemplate>
</asp:Repeater>
</center>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?