日期:2014-05-17 浏览次数:20417 次
protected void Page_Load(object sender, EventArgs e) { //绑定数据到ddl省份,城市 if (!IsPostBack) { DataTable dt_prov; dt_prov = spaceList.Get_Province(); ddl_Province.DataSource = dt_prov.DefaultView; ddl_Province.DataValueField = "ProvinceID"; ddl_Province.DataTextField = "ProvinceName"; ddl_Province.DataBind(); } }
protected void ddl_Province_SelectedIndexChanged(object sender, EventArgs e) { provinceID = Convert.ToInt32(ddl_Province.SelectedValue.Trim().ToString()); dt_city = spaceList.Get_City(provinceID); ddl_City.DataSource = dt_city.DefaultView; ddl_City.DataValueField = "CityID"; ddl_City.DataTextField = "CityName"; ddl_City.DataBind(); }
<asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel2" runat="server"> <ContentTemplate> 所在地区:<asp:DropDownList ID="ddlProvince" Width="80px" runat="server" AutoPostBack="true" AppendDataBoundItems="True" OnSelectedIndexChanged="ddlProvince_SelectedIndexChanged"> <asp:ListItem Text="全国" Value="-1"></asp:ListItem> </asp:DropDownList> <asp:DropDownList ID="ddlCity" runat="server" AppendDataBoundItems="True" Width="80px"> <asp:ListItem Text="所有地区" Value="-1"></asp:ListItem> </asp:DropDownList> </ContentTemplate> </asp:UpdatePanel>
------解决方案--------------------
把控件放入Ajax控件ScriptManager里的UpdatePanel中。
------解决方案--------------------
使用自带的ajax控件 。 就在工具箱里。 先放置一个<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
只能有一个。
<asp:UpdatePanel runat="server">
....需要无刷新的控件代码
</asp:UpdatePanel>
然后就是加一个updatepanel控件。 将你不需要刷新的内容放在这个控件中间就行。 该控件可以出现多个