这里没有使用SqlServer是因为老师要求使用access。

前台代码

<table style="margin:auto">
<tr><td class="auto-style3"><asp:DropDownList ID="DropDownList1" runat="server" DataTextField="Newscategory" AutoPostBack="True">
</asp:DropDownList></td><td>
<telerik:RadDatePicker ID="RadDatePicker1" runat="server" AutoPostBack="True" Culture="zh-CN" HiddenInputTitleAttibute="Visually hidden input created for functionality purposes." WrapperTableSummary="Table holding date picker control for selection of dates.">
<Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False" ViewSelectorText="x"></Calendar> <DateInput DisplayDateFormat="yyyy-MM-dd" DateFormat="yyyy-MM-dd" LabelWidth="40%" AutoPostBack="True"></DateInput> <DatePopupButton ImageUrl="" HoverImageUrl=""></DatePopupButton>
</telerik:RadDatePicker>
</td></tr>
<tr><td class="auto-style4">新闻类别</td><td class="auto-style2">新闻标题</td><td class="auto-style2">发布时间</td></tr>
<asp:ListView ID="ListView1" runat="server">
<EmptyDataTemplate>
<div style="margin-left: 600px;">搜索不到有关内容</div>
</EmptyDataTemplate>
<ItemTemplate><tr><td class="css"><%#Eval("Newscategory") %></td><td class="css"><a href="News2.aspx?id=<%#Eval("ID") %>"><%#Eval("Newstitle") %></td><td class="css"><%#Eval("Releasetime") %></td></tr></ItemTemplate>
</asp:ListView> </table>

这里使用了telerik第三方控件,所以需要写配置文件

 <system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<handlers>
<remove name="ChartImageHandler"/>
<add name="Telerik_Web_UI_WebResource_axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource"/>
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</handlers>
<directoryBrowse enabled="true"/>
<defaultDocument>
<files>
<add value="Login.aspx"/>
</files>
</defaultDocument>
</system.webServer>

还需要在html中加一段

<telerik:RadScriptManager ID="RadScriptManager1" runat="server"></telerik:RadScriptManager>

这样才可以使用telerik控件。

效果图如上,使用listview绑定数据。

后台代码

 public static readonly string connStr1 = "Provider = Microsoft.Jet.OLEDB.4.0 ;Data Source=" + HttpContext.Current.Server.MapPath("~/App_Data/News.mdb");//链接数据库
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
data();//显示下拉框数据
}
if (DropDownList1.SelectedItem.Text == "--请选择--")//判断下拉框的默认选项是否为“请选择”
{
News1();
if (RadDatePicker1.DateInput.Text == "")//如果是则显示所有数据
{
News1();
}
else//如果否则使用RadDatePicker控件进行对日期的筛选
{
OleDbConnection connection = new OleDbConnection(connStr1);
string sql = "select * from News where Releasetime = '" + RadDatePicker1.DateInput.DisplayText + "'";
OleDbDataAdapter myadapter = new OleDbDataAdapter(sql, connection);
DataSet ds = new DataSet();
myadapter.Fill(ds);
this.ListView1.DataSource = ds;
this.ListView1.DataBind();
}
}
else//如果不为“请选择”则执行news方法.
{
news();
} }
private void News1()//显示所有数据
{
OleDbConnection connection = new OleDbConnection(connStr1);
string sql = "select * from News";
OleDbDataAdapter myadapter = new OleDbDataAdapter(sql, connection);
DataSet ds = new DataSet();
myadapter.Fill(ds);
this.ListView1.DataSource = ds;
this.ListView1.DataBind();
}
private void news()//筛选数据
{
if (RadDatePicker1.DateInput.Text == "")//如果RadDatePicker控件没有被使用则执行DropDownList进行分类筛选
{
OleDbConnection connection = new OleDbConnection(connStr1);
string sql = "select * from News where Newscategory = '" + DropDownList1.SelectedValue + "'";
OleDbDataAdapter myadapter = new OleDbDataAdapter(sql, connection);
DataSet ds = new DataSet();
myadapter.Fill(ds);
this.ListView1.DataSource = ds;
this.ListView1.DataBind();
}
else//否则同时执行DropDownList和RadDatePicker进行筛选
{
OleDbConnection connection = new OleDbConnection(connStr1);
string sql = "select * from News where Newscategory = '" + DropDownList1.SelectedValue + "' and Releasetime = '" + RadDatePicker1.DateInput.DisplayText + "'";
OleDbDataAdapter myadapter = new OleDbDataAdapter(sql, connection);
DataSet ds = new DataSet();
myadapter.Fill(ds);
this.ListView1.DataSource = ds;
this.ListView1.DataBind();
}
}
private void data()//给DropDownList绑定数据
{
OleDbConnection connection = new OleDbConnection(connStr1);
string sql = "select * from News";
OleDbDataAdapter myadapter = new OleDbDataAdapter(sql, connection);
DataSet ds = new DataSet();
myadapter.Fill(ds);
this.DropDownList1.DataSource = ds;
this.DropDownList1.DataBind();
DropDownList1.Items.Insert(, new ListItem("--请选择--", ""));
DropDownList1.Items.FindByText("--请选择--").Selected = true;
}

演示效果:

没有任何筛选情况下显示所有数据

使用DropDownList进行筛选

使用DropDownList加RadDatePicker进行筛选

使用RadDatePicker进行筛选

以上属于比较简单的实现方法,有什么不足希望大家提出。

asp.net+access实现DropDownList与RadDatePicker同步筛选的更多相关文章

  1. asp.net MVC SignalR 与数据库 实时同步显示

    asp.net MVC SignalR 与数据库 实时同步显示 错误:未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持.如果希望使用通知,请为此数据库启用 ...

  2. 【ASP.NET】UCenter实现多站点同步注册

    问题描述 上一篇文章写了[ASP.Net]UCenter实现多站点同步登录退出 在整合论坛的时候,同步注册也是相当必要的一个功能:将论坛注册的用户同步到自己的网站,自己网站注册的用户同步到论坛. 官方 ...

  3. 【ASP.NET】UCenter实现多站点同步登录退出

    利用UCenter实现discuz论坛和应用网站同步登录和退出功能 测试环境:Discuz! X3.2.UCenter 1.6..Net Framework 4.0 进入Discuz 后台的UCent ...

  4. Asp.Net MVC绑定DropDownList等控件

    测试环境:vs2013..Net4.5.mvc5 一.Asp.Net MVC绑定控件原理说明 以Html.TextBox为例 /// <param name="name"&g ...

  5. 用asp连接Access数据库 制作简单登陆界面

    [题外话:最近做Internet作业,在这写一个适合初学入门的ASP连接ACCESS数据库做登陆界面的简单的例子,以慰藉我一口气把以前做过的系统中的PHP代码全改成ASP代码来临时应付作业的心情... ...

  6. asp.net mvc中DropDownList

    asp.net mvc中DropDownList的使用. 下拉列表框 以分为两个部分组成:下拉列表和默认选项 DropDownList扩展方法的各个重载版本基本上都会传递到这个方法上:   publi ...

  7. asp.net core 2.2 中的过滤器/筛选器(上)

    ASP.NET Core中的过滤器/筛选器 通过使用 ASP.NET Core MVC 中的筛选器,可在请求处理管道中的特定阶段之前或之后运行代码. 注意:本主题不适用于 Razor 页面. ASP. ...

  8. ASP.NET Repeater 绑定 DropDownList Calendar 选择日期

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. ASP.NET中使用DropDownList实现无刷新二级联动详细过程

    Demo.sql create table Car( [id] int identity, ) not null, ) not null ) go insert into Car ([brand],[ ...

随机推荐

  1. SPOJ-New Distinct Substrings,注意会爆int

    SUBST1 - New Distinct Substrings 和上一题题意一样,只是数据范围有所改动,50000. 思路还是和上一题一样,所有字串数(len+1)*len/2.注意这里可能爆int ...

  2. TMOS_Order_of_Operations_v0.1

  3. 【Luogu】P2258子矩阵(状态压缩,DP)

    233今天蒟蒻我连文化课都没听光想着这个了 然后我调了一下午终于过了!!! 一看数据范围似乎是状压,然而216等于65536.开一个65536*65536的二维数组似乎不太现实. 所以Rqy在四月还是 ...

  4. NOJ——1642简单的图论问题?(BFS+优先队列)

    [1642] 简单的图论问题? 时间限制: 5000 ms 内存限制: 65535 K 问题描述 给一个 n 行 m 列的迷宫,每个格子要么是障碍物要么是空地.每个空地里都有一个权值.你的 任务是从找 ...

  5. [POJ1741]Tree(点分治模板)

    传送门 良心解析 其实以前在求某段序列上的区间统计问题时就碰到过类似于这样的思想. 当时的区间统计问题思路大致是这样: 选取一个点作为中间点,从这个点的左边和右边统计出满足条件的点对.然后当前的中间点 ...

  6. 【kmp+求所有公共前后缀长度】poj 2752 Seek the Name, Seek the Fame

    http://poj.org/problem?id=2752 [题意] 给定一个字符串,求这个字符串的所有公共前后缀的长度,按从小到达输出 [思路] 利用kmp的next数组,最后加上这个字符串本身 ...

  7. 通过new ClasspathApplicationContext("applicationContext.xml")找不到文件时

    可以把applicationContext.xml放到/WEB-INF/classes目录下使用先说:ClassPathXmlApplicationContext 这个类,默认获取的是WEB-INF/ ...

  8. Angular Material & Hello World

    前言 Angular Material(下称Material)的组件样式至少是可以满足一般的个人开发需求(我真是毫无设计天赋),也是Angular官方推荐的组件.我们通过用这个UI库来快速实现自己的i ...

  9. 死磕 java同步系列之自己动手写一个锁Lock

    问题 (1)自己动手写一个锁需要哪些知识? (2)自己动手写一个锁到底有多简单? (3)自己能不能写出来一个完美的锁? 简介 本篇文章的目标一是自己动手写一个锁,这个锁的功能很简单,能进行正常的加锁. ...

  10. 2017-10-29-morning-清北模拟赛

    T1 遭遇 #include <algorithm> #include <cstdio> #include <cmath> inline void read(int ...