首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

省市区三级联动的代码,如何修改让它获取初始值呢

2013-03-04 
省市区三级联动的代码,怎么修改让它获取初始值呢省市区三级联动的代码,怎么修改让它获取初始值呢script t

省市区三级联动的代码,怎么修改让它获取初始值呢
省市区三级联动的代码,怎么修改让它获取初始值呢
<script type="text/javascript" src="get3j.js"></script>
<select id="sp" name ="sp"onChange="chgProvinces('sp','sc','sa')">
        <option></option>
    </select>
    <select id="sc" name ="sc"onChange="chgCitys('sc','sa')">
        <option></option>
    </select>
    <select id="sa" name ="sa" >
        <option></option>
    </select>
<script type="text/javascript">
loadData('sp', 'sc', 'sa');
</script>
[解决办法]
将原代码的三个javascript函数分别替换为:


        function getProvinces(spid) {
            var sp = document.getElementById(spid);
            sp.options.length = 0;

            var pAs = provincesData.split(",");

var i=-1,j=0
            for (var pA in pAs) {
                var pA_parts = pAs[pA].split("
[解决办法]
");
                sp.options.add(new Option(pA_parts[1], pA_parts[0]));
i=i+1
if (pA_parts[1]=="<%=request.querystring("p")%>"){j=i}
            }

            if (sp.options.length == 0) {
                sp.disabled = true;
                sp.options.add(new Option("", "000000"));
            }
            else {
                sp.disabled = false;
            }

            sp.options[j].selected = true;
        }

        function getCitys(scid, spid) {
            var sc = document.getElementById(scid);
            sc.options.length = 0;

            var sp = document.getElementById(spid);
            var pv = sp.options[sp.selectedIndex].value;

            var cAs = citysData.split(",");



var i=-1,j=0
            for (var cA in cAs) {
                var cA_parts = cAs[cA].split("
[解决办法]
");

                if (pv.substring(0, 2) == cA_parts[0].substring(0, 2)) {
                    sc.options.add(new Option(cA_parts[1], cA_parts[0]));
i=i+1
if (cA_parts[1]=="<%=request.querystring("c")%>"){j=i}
                }
            }

            if (sc.options.length == 0) {
                sc.disabled = true;
                sc.options.add(new Option("", "000000"));
            }
            else {
                sc.disabled = false;
            }

            sc.options[j].selected = true;

        }

        function getAreas(said, scid) {
            var sa = document.getElementById(said);
            sa.options.length = 0;

            var sc = document.getElementById(scid);
            var cv = sc.options[sc.selectedIndex].value;

            var aAs = areasData.split(",");
            
var i=-1,j=0
for (var aA in aAs) {
                var aA_parts = aAs[aA].split("
[解决办法]
");

                if (cv.substring(0, 4) == aA_parts[0].substring(0, 4)) {
                    sa.options.add(new Option(aA_parts[1], aA_parts[0]));
i=i+1
if (aA_parts[1]=="<%=request.querystring("a")%>"){j=i}
                }
            }

            if (sa.options.length == 0) {
                sa.disabled = true;


                sa.options.add(new Option("", "000000"));
            }
            else {
                sa.disabled = false;
            }

            sa.options[j].selected = true;
        }



然后用request.querystring方法传递了省、市、县 三个变量
使用的时候在url后面加上:?p=浙江省&c=舟山市&a=普陀区
你也可以改用其他方法传递变量
效果如图:省市区三级联动的代码,如何修改让它获取初始值呢

热点排行