因为asp:DropDownList控件只能在列表中选择,不能输入;为了解决此问题,改用HTML <Select runat="server" >控件解决。
可是依然有问题:
1)<Select runat="server" >依然不能输入值进行查询;
2)改变<Select>中的值,DropDownListDb_ServerChange(object sender, EventArgs e)事件没有执行;
代码贴出来,请高手帮助!
前台页面:
<asp:DropDownList></asp:DropDownList>控件只能在列表中选择,不能输入;
改用
<select id="DropDownListDb" onserverchange="DropDownListDb_ServerChange" runat="server" > </select>
后台代码: protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Query();
InitData();
} }
/// <summary>
/// 初始化页面数据
/// </summary>
private void InitData()
{
//初始化DropDownList1的数据源
DataTable dt = Bs.Query(new Hashtable ());
DropDownListDb.Items.Clear();
DropDownListDb.Items.Add(new ListItem("所有电表", "")); foreach (DataRow dr in dt.Rows)
DropDownListDb.Items.Add(new ListItem(dr["VoltMeter"].ToString(), dr["VoltMeter"].ToString()));
}
/// <summary>
/// 根据页面上用户输入的查询条件,查询数据
/// </summary>
private void Query()
{
//初始化:GridView的数据源
DataTable dt1 = null;
Hashtable ht = new Hashtable();
//FV基站信息数据绑定
if (DropDownListDb.Value.ToString() != "")
{
ht.Add("VoltMeter", DropDownListDb.Value.ToString());
dt1 = Bs.Query(ht);
FV.DataSource = dt1;
FV.DataBind();
}
else
{
FV.DataSource = null;
FV.DataBind(); }
//保存下拉框的选择项到ViewState数组对象
ViewState.Add("DropDownListDb", DropDownListDb.Value); }
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void DropDownListDb_ServerChange(object sender, EventArgs e)
{
Query();
}
可是依然有问题:
1)<Select runat="server" >依然不能输入值进行查询;
2)改变<Select>中的值,DropDownListDb_ServerChange(object sender, EventArgs e)事件没有执行;
代码贴出来,请高手帮助!
前台页面:
<asp:DropDownList></asp:DropDownList>控件只能在列表中选择,不能输入;
改用
<select id="DropDownListDb" onserverchange="DropDownListDb_ServerChange" runat="server" > </select>
后台代码: protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Query();
InitData();
} }
/// <summary>
/// 初始化页面数据
/// </summary>
private void InitData()
{
//初始化DropDownList1的数据源
DataTable dt = Bs.Query(new Hashtable ());
DropDownListDb.Items.Clear();
DropDownListDb.Items.Add(new ListItem("所有电表", "")); foreach (DataRow dr in dt.Rows)
DropDownListDb.Items.Add(new ListItem(dr["VoltMeter"].ToString(), dr["VoltMeter"].ToString()));
}
/// <summary>
/// 根据页面上用户输入的查询条件,查询数据
/// </summary>
private void Query()
{
//初始化:GridView的数据源
DataTable dt1 = null;
Hashtable ht = new Hashtable();
//FV基站信息数据绑定
if (DropDownListDb.Value.ToString() != "")
{
ht.Add("VoltMeter", DropDownListDb.Value.ToString());
dt1 = Bs.Query(ht);
FV.DataSource = dt1;
FV.DataBind();
}
else
{
FV.DataSource = null;
FV.DataBind(); }
//保存下拉框的选择项到ViewState数组对象
ViewState.Add("DropDownListDb", DropDownListDb.Value); }
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void DropDownListDb_ServerChange(object sender, EventArgs e)
{
Query();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货