文档章节

C#三级省市区ajax联动控件,利用UpdatePanel,以及页面取值

深圳大道
 深圳大道
发布于 2016/12/29 15:37
字数 309
阅读 14
收藏 0
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="PCAControl.ascx.cs" Inherits="PCAControl" %>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:DropDownList ID="ddlProvice" runat="server" AppendDataBoundItems="true" AutoPostBack="true"
            OnSelectedIndexChanged="ddlProvice_SelectedIndexChanged">
            <asp:ListItem Text="-请选择省份-" Value=""></asp:ListItem>
        </asp:DropDownList>
        <asp:DropDownList ID="ddlCity" runat="server" AutoPostBack="true"
            onselectedindexchanged="ddlCity_SelectedIndexChanged">
            <asp:ListItem Text="-请选择城市-" Value=""></asp:ListItem>
        </asp:DropDownList>
        <asp:DropDownList ID="ddlArea" runat="server">
            <asp:ListItem Text="-请选择县区-" Value=""></asp:ListItem>
        </asp:DropDownList>
    </ContentTemplate>
</asp:UpdatePanel>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class PCAControl : System.Web.UI.UserControl
{

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindProvince();
        }
    }

    //加载省份
    protected void BindProvince()
    {
        DataTable dt = Maticsoft.DBUtility.DbHelperOra.Query("SELECT DISTINCT PROVINCE FROM SY_CITYCODE  GROUP   BY PROVINCE").Tables[0];
        ddlProvice.DataTextField = "PROVINCE";
        ddlProvice.DataValueField = "PROVINCE";
        ddlProvice.DataSource = dt;
        ddlProvice.DataBind();
    }

    //加载城市
    protected void ddlProvice_SelectedIndexChanged(object sender, EventArgs e)
    {
        string SelectPro = ddlProvice.SelectedValue;
        if (!string.IsNullOrEmpty(SelectPro))
        {
            ddlCity.Items.Clear();
            ddlCity.AppendDataBoundItems = true;
            ddlCity.Items.Insert(0, new ListItem("-请选择城市-", ""));
            DataTable dt1 = Maticsoft.DBUtility.DbHelperOra.Query("SELECT CITY FROM SY_CITYCODE Where PROVINCE='" + SelectPro + "'  Group By City").Tables[0];
            ddlCity.DataTextField = "CITY";
            ddlCity.DataValueField = "CITY";
            ddlCity.DataSource = dt1;
            ddlCity.DataBind();
        }
    }

    //加载县区
    protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)
    {
        string SelectCity = ddlCity.SelectedValue;
        if (!string.IsNullOrEmpty(SelectCity))
        {
            ddlArea.Items.Clear();
            ddlArea.AppendDataBoundItems = true;
            ddlArea.Items.Insert(0, new ListItem("-请选择县区-", ""));
            DataTable dt2 = Maticsoft.DBUtility.DbHelperOra.Query("SELECT AREA FROM SY_CITYCODE Where CITY='" + SelectCity + "'").Tables[0];
            ddlArea.DataTextField = "AREA";
            ddlArea.DataValueField = "AREA";
            ddlArea.DataSource = dt2;
            ddlArea.DataBind();
        }
    }
}


调用页面取值

protected void Button1_Click(object sender, EventArgs e)
    {
        string SelectedProv = ((DropDownList)PCAControl1.FindControl("ddlProvice")).SelectedValue;
        string SelectedCity = ((DropDownList)PCAControl1.FindControl("ddlCity")).SelectedValue;
        string SelectedArea = ((DropDownList)PCAControl1.FindControl("ddlArea")).SelectedValue;
        MSCL.JsHelper.Alert(SelectedProv + "-" + SelectedCity + "-" + SelectedArea, Page);
    }


 

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/8098432

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
[转载].NET ASP.NET 中web窗体(.aspx)利用ajax实现局部刷新

C#所有runat="server"的控件都会造成整个界面的刷新,如果想实现局部刷新,可以利用ajax。需要加入的控件有ScriptManager和UpdatePanel,可以实现只刷新UpdatePanel内的内容。 C#中已经将AJA...

凯子叔
昨天
0
0
javaWeb数据库动态加载全国省市区三级联动

demo源码下载地址:https://git.oschina.net/zhengweishan/GetProvinceCityArea 首先声明一下,全国省市区三级联动有很多的插件。没有必要这么麻烦的把省市区存到数据库,然后再获取。这样缺...

火龙战士
2015/04/16
17.4K
8
省市区三级联动插件--CiSelect

省市区三级联动插件,数据取自http://www.oschina.net/code/snippet149862_53831 演示地址:http://fawei.oschina.io/ciselect/ 先下载源码,在项目中引用CiSelect.js插件,本插件不依赖于任何...

CiChui
2017/07/10
844
1
AJAX控件UpdatePanel使用详解

AJAX控件UpdatePanel使用详解(一) UpdatePanel可以用来创建丰富的局部更新Web应用程序,它是ASP.NET 2.0 AJAX Extensions中很重要的一个控件,其强大之处在于不用编写任何客户端脚本,只要...

长平狐
2013/01/06
219
0
Asp.Net Ajax的两种基本开发模式

Asp.Net Ajax的两种基本开发模式 引言 最近花了一些时间,将微软Asp.Net官方的Ajax视频全部看了一遍,地址是http://www.asp.net/learn/ajax-videos/,视频大多都很短,8至15分钟的居多,有讲...

张子阳
2008/11/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Nginx 快速安装详解

一、Nginx Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамбле...

网络小虾米
7分钟前
3
0
技术分享 | slave_relay_log_info 表认知的一些展开

作者:胡呈清 slave_relay_log_info 表是这样的: mysql> select * from mysql.slave_relay_log_info\G *************************** 1. row *************************** Number_of_lin......

爱可生
10分钟前
2
0
nginx配置http访问自动跳转到https

server {listen 80;server_name www.域名.com;rewrite ^(.*) https://$server_name$1 permanent;}server {listen 443;server_name www.域名.com;root /home/www;ssl on;......

很好亦平凡ms
10分钟前
2
0
SpreadJS:一款中国研发的类Excel开发工具,功能涵盖Excel的 95% 以上

Excel 作为一款深受用户喜爱的电子表格工具,借助其直观的界面、出色的计算性能、数据分析和图表,已经成为数据统计领域不可或缺的软件之一。 基于Excel对数据处理与分析的卓越表现,把Excel...

葡萄城技术团队
10分钟前
2
0
用javafx框架tornadofx做了个天气预报的程序

class WeatherApp : App(WeatherView::class)class WeatherView : View("十五天天气预报") { val weatherVM: WeatherViewModel by inject() val controller: WeatherController by......

oschina4cyy
14分钟前
2
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部