文档章节

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

深圳大道
 深圳大道
发布于 2016/12/29 15:25
字数 309
阅读 33
收藏 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
深圳
架构师
私信 提问
javaWeb数据库动态加载全国省市区三级联动

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

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

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

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

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

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

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

张子阳
2008/11/05
0
0
引用provinces.js的三级联动

第一次写随笔 应该写的不是太好 请多多见谅 我这次是在网上发现了一个三级联动 也是给新人一个福利 这个是你需要新建个 JavaScript 文件 并复制到你新建的文件里面 2 { 3 "name": "北京市", ...

糊涂话
2018/12/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

反编译9.png图片还原

本文链接:https://blog.csdn.net/a1140778530/article/details/10528507 经常反编译apk文件找资源,9.png的文件处理起来很麻烦。 最近使用Ant自动编译打包app时,从别处搜罗来的9.png文件导...

shzwork
5分钟前
1
0
Shell脚本应用 – for、while循环语句

一、for循环语句 在实际工作中,经常会遇到某项任务需要多次执行的情况,而每次执行时仅仅是处理的对象不一样,其他命令相同。例如:根据通讯录中的姓名列表创建系统账号等情况。 当面对各种...

linux-tao
5分钟前
1
0
RPA风潮下企业财务工作模式的变革

RPA(机器人流程自动化)在财务领域的应用,正给企业财务带来前所未有的改变。 前RPA时代,财务领域面临的痛点 在RPA机器人应用之前,企业财务工作进程的推进,主要通过财务人员人工操作或信...

UiBot
10分钟前
2
0
Hive之命令行修改表注释

最近遇到一个需求,在不重建表的情况下,修改表的注释,hive有没有类似关系型数据库的SQL命令来修改呢,找了下,亲测有效,如下List-1 List-1 hive>use your_schemahvie>ALTER TABLE tabl...

克虏伯
10分钟前
1
0
是什么,它的作用是什么

在HTML文档的首部往往会有这么一句话<!DOCTYPE html>,许多时候我们忽视了它的存在,它实际上是一个声明,告诉浏览器用哪种HTML版本的规范来解读HTML文档。 尽管我们不给出这句声明浏览器照样...

前端老手
16分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部