⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.aspx

📁 一个完整的办公自动化源码,免费提供给大家下载
💻 ASPX
字号:
<!--该页的作用是将news表中的所有数据以列表的形式简单的显示给用户,但不真正显示
    每条新闻的详细内容,只显示标题,录入日期及提供对上传附件的链接,真正的显示
	新闻详细内容的是newsview.aspx,用户通过点击新闻的标题而调用。
	本页还支持三种查询,即发贴部门(sendmen)、新闻标题(otitle)、发布日期(odate)
	且新闻标题查询方式支持模糊查询
-->
<!--通过该实例得到的经验:
	1、在DataGrid控件中使用非HyperLinkColumn列来实现打开新窗口,并设定新窗口的属性。
	2、将数据表中的字段以下拉列表框的形式显示,使用数据绑定的方法。
-->	
<%@ Page Language="VB" ContentType="text/html"  %>
<%@ Import Namespace="system.data" %>
<%@ Import Namespace="system.data.oledb" %>
<html>
<head>
<title>最新资讯</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="CSS.CSS" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
//-->
</script></head>

<body bgcolor="#CCCCCC">
<form runat="server">
<input type="hidden" id="zfilter" runat="server">
<center>
    <table width="549" border="0" cellpadding="0" cellspacing="0" background="pic/002.png" bordercolorlight="#008080" bordercolordark="#CCCCCC">
      <tr> 
        <td width="287" height="20"><font color="#FFFFFF">  <strong>最新咨询</strong></font></td>
        <td width="83" height="20"><font color="#FFFFFF">按部门</font></td>
        <td width="179"><asp:dropdownlist Font-Size="10" ID="zbmlist" runat="server"></asp:dropdownlist>
          <font color="#FFFFFF">
<asp:button Font-Size="10" ID="zfindbm" runat="server" Text="查询" OnClick="zbmft" />
          </font></td>
      </tr>
    </table>

	<asp:datagrid runat="server" ID="mygrid"
		 AutoGenerateColumns="false"
		 AllowPaging="true"
		 PageSize="10"
		 OnPageIndexChanged="zscpage"
		 BorderColor="#008080"
		 BorderWidth="1"
		 Width="549"
		 >
		 <headerstyle BackColor="#FFFFFF" HorizontalAlign="center" />
		 <itemstyle BackColor="#FFFFFF" HorizontalAlign="center" />
		 <pagerstyle BackColor="#FFFFFF" NextPageText="下一页" PrevPageText="上一页" HorizontalAlign="right"  />
		<columns>
			<asp:templatecolumn HeaderText="主题" ItemStyle-HorizontalAlign="left" ItemStyle-Width="280">
				<itemtemplate>
					 <img src="pic/multipage.gif"> <a href="#" onClick=MM_openBrWindow('newsview.aspx?id=<%# container.dataitem("id") %>','','scrollbars=yes,width=565,height=400,left=1,top=1')><%# container.dataitem("otitle") %></a>
				</itemtemplate>
			</asp:templatecolumn>
		</columns>
		<columns>
			<asp:templatecolumn HeaderText="日期" ItemStyle-Width="90">
				<itemtemplate>
					 <%# format(container.dataitem("odate"),"yyyy-MM-dd") %>
				</itemtemplate>
			</asp:templatecolumn>

			<asp:boundcolumn DataField="sendmen" HeaderText="发布者" ItemStyle-Width="99" />
		</columns>
		<columns>
			<asp:templatecolumn HeaderText="附件" ItemStyle-Width="80">
				<itemtemplate>
					<a href='<%# session("sharedownpath") & container.dataitem("ofilename") %>'><img src="pic/images/DOWNLOAD.gif" border="0"></a>
				</itemtemplate>
			</asp:templatecolumn>
		</columns>
	</asp:datagrid> <strong><font color="#FF0000"><br>
    关键字:</font></strong> 
    <asp:textbox BorderStyle="solid" BorderWidth="1" Font-Size="10" ID="zqtlist" runat="server" TextMode="SingleLine" />
    <asp:dropdownlist ID="zfilttype" runat="server">
		<asp:listitem Text="按标题" value="otitle" />
		<asp:listitem Text="按日期" value="odate" />
	</asp:dropdownlist>
    <asp:button ID="zfind" runat="server" Text="查询" onclick="zqtfind" />
    <br>
    <asp:label ID="msg" runat="server"></asp:label>
  </center>	
</form>
</body>
</html>
<script language="VB" runat="server">
	sub bindlist()
		'绑定数据表DataGrid,这里绑定的是经过筛选后的数据
		dim uinfo()=session("lguinfo")
		dim conn as new oledbconnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("office.mdb"))
		conn.open()
		dim objada as new oledbdataadapter("select * from news order by id DESC",conn)
		'得到新闻表(news)中的所有数据
		dim ds as new dataset()
		objada.fill(ds,"news")
		dim dt as datatable=ds.tables("news")
		dim dv as new dataview(dt)
		dv.rowfilter=zfilter.value
		'zfilter是一个隐藏字段,它保存了用户在客户端设置的筛选字串
		'这里是修改dataview对象的筛选字串
		mygrid.datasource=dv
		mygrid.databind()
		conn.close()
	end sub
	sub bmlist()
		'这个过程是将部门数据表中的部门字段绑定到下拉列表框中,供用户通过上传
		'新闻不的各部门进行筛选
		dim conn as new oledbconnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("office.mdb"))
		conn.open()
		dim objada as new oledbdataadapter("select btype from btype",conn)
		'选择部门表(btype)中的部门名称
		dim ds as new dataset()
		objada.fill(ds,"btype")
		zbmlist.datasource=ds.tables("btype")
		zbmlist.datatextfield="btype"
		zbmlist.datavaluefield="btype"
		zbmlist.databind()
		'为下拉列表框增加数据绑定
		zbmlist.items.add(zbmlist.items.count-1)
		zbmlist.items(zbmlist.items.count-1).text="所有部门"
		zbmlist.items(zbmlist.items.count-1).value="所有部门"
		'在下拉列表框中加入一选项,提供给用户所有部门的选择
		conn.close()
	end sub
	sub page_load(s as object,e as eventargs)
		if not ispostback then
			'第一次启动该页时,为下拉列表框及DataGrid绑定数据
			bindlist()
			bmlist()
		end if
	end sub
	sub zscpage(s as object,e as DataGridPageChangedEventArgs)
		'为DataGrid对象提供翻页功能
		s.currentpageindex=e.newpageindex
		bindlist()
	end sub
	
	sub zbmft(s as object,e as eventargs)
		'此过程用来对部门进行过滤,此过程中的过滤与zqtfind过程中的过滤字串不是
		'同时生效的,如果设置了部门过滤,则先去掉zqtfind过程中的过滤字串,然后
		'再设置过滤条件为相应的部门,即zqtfind过程中的过滤条件与本过程中的过滤
		'条件没有or关系也没有and关系
		dim bmstr as string
		bmstr=zbmlist.selecteditem.value
		if bmstr="所有部门" then
			zfilter.value=""
			'当用户选择所有部门时,去掉过滤字串,使SQL得到所有的数据
		else
			zfilter.value="sendmen='" & bmstr & "'"
			'zfilter是一个runat="server"的隐藏变量,即可以在服务端直接调用,
			'修改该变量的值,使表单在提交后能保存用户所选择的过滤条件。
		end if
		'msg.text=zfilter.value
		bindlist()
	end sub
	
	sub zqtfind(s as object,e as eventargs)
		'此过程用来对其它类别进行过滤,这里设置的条件与部门条件不存在OR关系也没有AND关系。
		if zqtlist.text<>"" then
			'当关键字段不为空时才设置过滤条件
			dim lstype as string=zfilttype.selecteditem.value
			if lstype="odate" then
				if isdate(zqtlist.text) then
				'因为odate是日期型字段,所以构造filter字串的方式不同
					zfilter.value="odate" & "=#" & cdate(zqtlist.text) & "#"
				else
					'为了避免用户输入的数据非日期型数据,就清空过滤参数
					zfilter.value=""
				end if
			else
					zfilter.value=zfilttype.selecteditem.value & " like '%" & zqtlist.text & "%' "
				'当用标题(otitle)来查询时,使用模糊查询
			end if
		else
			zfilter.value=""
		end if
		'msg.text=zfilter.value
		bindlist()
	end sub
</script>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -