zoukankan      html  css  js  c++  java
  • 生成xml文件,并且实现省,市,县无刷新联动

    首先是生成xml文件,生成xml文件前去网上DOWNload一个最新中国省市行政数据库
    public  void createxml(string filename)
        {
            XmlTextWriter mywrite = new XmlTextWriter(filename, Encoding.UTF8);
            try
            {
                mywrite.Formatting = Formatting.Indented;
                mywrite.WriteStartDocument();
                //mywrite.WriteProcessingInstruction("xml"
                mywrite.WriteStartElement("local");
                mywrite.WriteAttributeString("country", "中国");
                pdt = getprovincelist();
                if (pdt.Rows.Count > 0)
                {
                    for (int i = 0; i < pdt.Rows.Count; i++)
                    {
                        mywrite.WriteStartElement("province");
                        mywrite.WriteAttributeString("province", pdt.Rows[i]["province"].ToString());
                        mywrite.WriteAttributeString("provinceID", pdt.Rows[i]["provinceID"].ToString());
                        cdt = getcitylist(pdt.Rows[i]["provinceID"].ToString());
                        if (cdt.Rows.Count > 0)
                        {
                            for (int j = 0; j < cdt.Rows.Count; j++)
                            {
                                mywrite.WriteStartElement("city");
                                mywrite.WriteAttributeString("city", cdt.Rows[j]["city"].ToString());
                                mywrite.WriteAttributeString("cityID", cdt.Rows[j]["cityID"].ToString());
                                adt = getarealist(cdt.Rows[j]["cityID"].ToString());
                                if (adt.Rows.Count > 0)
                                {
                                    for (int k = 0; k < adt.Rows.Count; k++)
                                    {
                                        mywrite.WriteStartElement("area");
                                        mywrite.WriteAttributeString("area", adt.Rows[k]["area"].ToString());
                                        mywrite.WriteAttributeString("areaID", adt.Rows[k]["areaID"].ToString());
                                        mywrite.WriteEndElement();
                                    }
                                }
                                mywrite.WriteEndElement();
                            }
                        }
                        mywrite.WriteEndElement();
                    }
                }
                mywrite.WriteEndElement();
                mywrite.WriteEndDocument();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                mywrite.Close();
            }
        }
    /*****/
    接下来是aspx页面,需要引用jquery.js和jquery.xml2json.js(这是一个把xml转换成json的插件)
    以下是代码

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="test_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
        <script language="javascript" type="text/javascript" src="../jquery.js"></script>
        <script language="javascript" type="text/javascript" src="../opselect.js"></script>
        <script language="javascript" type="text/javascript" src="../jquery.xml2json.js"></script>
        <script language="javascript" type="text/javascript">
            $(function()
            {
                var local
                $.get("20090107.xml",function(xml){
                local = $.xml2json(xml, true);
                for(index in local.province)
                {
                    $("#Select1").addOption(local.province[index].province,local.province[index].provinceID);
                }
                }
                );
                $("#Select1").bind("change",function()
                {//选清空城市,县城的值;
                    $("#Select2").clearAll();
                    $("#Select2").addOption("--请选择--",0);
                    $("#Select3").clearAll();
                    $("#Select3").addOption("--请选择--",0);
                    var provinceID=$("#Select1").getSelectedValue();
                    for(provinceindex in local.province)
                    {
                        if(local.province[provinceindex].provinceID==provinceID)
                        {
                            for(cityindex in local.province[provinceindex].city)
                            {
                                $("#Select2").addOption(local.province[provinceindex].city[cityindex].city,local.province[provinceindex].city[cityindex].cityID);
                            }
                            break;
                        }
                    }
                }
                );
                 $("#Select2").bind("change",function()
                {//选清空城市,县城的值;
                    $("#Select3").clearAll();
                    $("#Select3").addOption("--请选择--",0);
                    var provinceID=$("#Select1").getSelectedValue();
                    var cityid=$("#Select2").getSelectedValue();
                    for(provinceindex in local.province)
                    {
                         if(local.province[provinceindex].provinceID==provinceID)
                        {
                            for(cityindex in local.province[provinceindex].city)
                            {
                                if(local.province[provinceindex].city[cityindex].cityID==cityid)
                                {
                                    for(townindex in local.province[provinceindex].city[cityindex].area)
                                    {
                                        $("#Select3").addOption(local.province[provinceindex].city[cityindex].area[townindex].area,local.province[provinceindex].city[cityindex].area[townindex].areaID);
                                    }
                                }
                            }
                        }
                    }
                }
                );
                //$("#Select2").clearother();
            }
            );
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <select id="Select1">
                <option value="0">--请选择--</option>
            </select>
            <select id="Select2">
                <option value="0">--请选择--</option>
            </select>
            <select id="Select3">
                <option value="0">--请选择--</option>
            </select>
        </div>
        </form>
    </body>
    </html>

  • 相关阅读:
    最新第四套人民币冠号大全
    使用Java程序调用MatLab
    Android 横屏时禁止输入法全屏
    linux 从命令行自动识别文件并将其打开的命令
    deep learning 的java库
    重磅!神经网络浅讲:从神经元到深度学习
    开源的c语言人工神经网络计算库 FANN
    开源java神经网络组件Joone、Encog和Neuroph
    基于Storm 分布式BP神经网络,将神经网络做成实时分布式架构
    git:could not open a connection to your authentication agent
  • 原文地址:https://www.cnblogs.com/your568/p/1371236.html
Copyright © 2011-2022 走看看