请问:省市县三级联动获取select的值

hyynet09 2009-03-23 02:13:02
所在地:<select id="province" runat=server style="position: relative" onserverchange="province_ServerChange">

</select>
<select id="city" runat=server style="position: relative">
</select>
<select id="county" runat=server style="position: relative">
</select>
<SCRIPT language="javascript">
setup()
</SCRIPT>


js 代码:

function Dsy()
{
this.Items = {};
}
Dsy.prototype.add = function(id,iArray)
{
this.Items[id] = iArray;
}
Dsy.prototype.Exists = function(id)
{
if(typeof(this.Items[id]) == "undefined") return false;
return true;
}

function change(v){
var str="0";
for(i=0;i<v;i++){ str+=("_"+(document.getElementById(s[i]).selectedIndex-1));};
var ss=document.getElementById(s[v]);
with(ss){
length = 0;
options[0]=new Option(opt0[v],opt0[v]);
if(v && document.getElementById(s[v-1]).selectedIndex>0 || !v)
{
if(dsy.Exists(str)){
ar = dsy.Items[str];
for(i=0;i<ar.length;i++)options[length]=new Option(ar[i],ar[i]);
if(v)options[1].selected = true;
}
}
if(++v<s.length){change(v);}
}
}

var dsy = new Dsy();

dsy.dsy.add("0_21_8",["保德县","代县","定襄县","繁峙县","河曲县","静乐县","宁武县","偏关县","神池县","五台县","五寨县","忻州市","原平市","岢岚县"]);
dsy.add("0_21_9",["平定县","阳泉市","盂县"]);
dsy.add("0_21_10",["河津市","临猗县","平陆县","万荣县","闻喜县","夏县","新绛县","永济市","垣曲县","运城市","芮城县","绛县","稷山县"]);


dsy.add("0_22",["安康","宝鸡","汉中","商洛","铜川","渭南","西安","咸阳","延安","榆林"]);
dsy.add("0_22_0",["安康市","白河县","汉阴县","宁陕县","平利县","石泉县","旬阳县","镇坪县","紫阳县","岚皋县"]);
dsy.add("0_22_1",["宝鸡市","宝鸡县","凤县","凤翔县","扶风县","陇县","眉县","千阳县","太白县","岐山县","麟游县"]);
dsy.add("0_22_2",["城固县","佛坪县","汉中市","留坝县","略阳县","勉县","南郑县","宁强县","西乡县","洋县","镇巴县"]);
dsy.add("0_22_3",["丹凤县","洛南县","山阳县","商洛市","商南县","镇安县","柞水县"]);
dsy.add("0_22_4",["铜川市","宜君县"]);
dsy.add("0_22_5",["白水县","澄城县","大荔县","富平县","韩城市","合阳县","华县","华阴市","蒲城县","渭南市","潼关县"]);
dsy.add("0_22_6",["高陵县","户县","蓝田县","西安市","周至县"]);
dsy.add("0_22_7",["彬县","长武县","淳化县","礼泉县","乾县","三原县","武功县","咸阳市","兴平市","旬邑县","永寿县","泾阳县"]);
dsy.add("0_22_8",["安塞县","富县","甘泉县","黄陵县","黄龙县","洛川县","吴旗县","延安市","延长县","延川县","宜川县","志丹县","子长县"]);
dsy.add("0_22_9",["定边县","府谷县","横山县","佳县","靖边县","米脂县","清涧县","神木县","绥德县","吴堡县","榆林市","子洲县"]);


dsy.add("0_23",["上海"]);
dsy.add("0_23_0",["","崇明县","上海市"]);

dsy.add("0_24",["阿坝藏族羌族自治州","巴中","成都","达州","德阳","甘孜藏族自治州","广安","广元","乐山","凉山彝族自治州","眉山","绵阳","南充","内江","攀枝花","遂宁","雅安","宜宾","资阳","自贡","泸州"]);
马边彝族自治县","沐川县","犍为县"]);
dsy.add("0_24_9",["布拖县","德昌县","甘洛县","会东县","会理县","金阳县","雷波县","美姑县","冕宁县","木里藏族自治县","宁南县","普格县","西昌市","喜德县","盐源县","越西县","昭觉县"]);
dsy.add("0_24_10",["丹棱县","洪雅县","眉山市","彭山县","青神县","仁寿县"]);
dsy.add("0_24_11",["安县","北川县","江油市","绵阳市","平武县","三台县","盐亭县","梓潼县"]);
dsy.add("0_24_12",["南部县","南充市","蓬安县","西充县","仪陇县","营山县","阆中市"]);
dsy.add("0_24_13",["隆昌县","内江市","威远县","资中县"]);
dsy.add("0_24_14",["米易县","攀枝花市","盐边县"]);
dsy.add("0_24_15",["大英县","蓬溪县","射洪县","遂宁市"]);
dsy.add("0_24_16",["宝兴县","汉源县","芦山县","名山县","石棉县","天全县","雅安市","荥经县"]);
dsy.add("0_24_17",["长宁县","高县","江安县","南溪县","屏山县","兴文县","宜宾市","宜宾县","珙县","筠连县"]);
dsy.add("0_29_6",["上虞市","绍兴市","绍兴县","新昌县","诸暨市","嵊州市"]);
dsy.add("0_29_7",["临海市","三门县","台州市","天台县","温岭市","仙居县","玉环县"]);
dsy.add("0_29_8",["苍南县","洞头县","乐清市","平阳县","瑞安市","泰顺县","温州市","文成县","永嘉县"]);
dsy.add("0_29_9",["舟山市","岱山县","嵊泗县"]);
dsy.add("0_29_10",["常山县","江山市","开化县","龙游县","衢州市"]);

dsy.add("0_30",["重庆"]);
dsy.add("0_30_0",["城口县","大足县","垫江县","丰都县","奉节县","合川市","江津市","开县","梁平县","南川市","彭水苗族土家族自治县","荣昌县","石柱土家族自治县","铜梁县","巫山县","巫溪县","武隆县","秀山土家族苗族自治县","永川市","酉阳土家族苗族自治县","云阳县","忠县","重庆市","潼南县","璧山县","綦江县"]);

var s=["province","city","county"];
var opt0 = ["省份","地级市","市、县级市、县"];
function setup()
{
for(i=0;i<s.length-1;i++)
document.getElementById(s[i]).onchange=new Function("change("+(i+1)+")");
change(0);
}


我如何在select里面获取我所选择的值呢?
有人说用
<input type="hidden" runat="server" id="hidprovince" />
获取,我好像不会,大家帮帮忙
...全文
742 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyynet09 2009-08-04
  • 打赏
  • 举报
回复
貌似是 request.form[]……
zuoming120 2009-03-23
  • 打赏
  • 举报
回复
变成服务器控件。在获取值
周公 2009-03-23
  • 打赏
  • 举报
回复
客户端取值:
select.options[select.selectedIndex].value
服务器端取值:
如果使用HTML控件,则用Request["控件ID"]取值。
如果是HTML服务器控件或者ASP.NET控件则直接在.cs代码中使用this.控件ID来访问控件的属性值。
messi_yang 2009-03-23
  • 打赏
  • 举报
回复
學習來了
網上有很多例子的~~
hyynet09 2009-03-23
  • 打赏
  • 举报
回复
各位大侠麻烦说详细点,我对这方面不怎么开窍
  • 打赏
  • 举报
回复
学习来啦。up
yh7272hy 2009-03-23
  • 打赏
  • 举报
回复
用hidden保存值,后台获取
悔说话的哑巴 2009-03-23
  • 打赏
  • 举报
回复
楼主解决?
coodd 2009-03-23
  • 打赏
  • 举报
回复
select.options[select.selectedIndex].value
zmm12 2009-03-23
  • 打赏
  • 举报
回复
<input type="hidden" runat="server" id="hidprovince">
zmm12 2009-03-23
  • 打赏
  • 举报
回复
是的
hyynet09 2009-03-23
  • 打赏
  • 举报
回复
参数id是什么?
hyynet09 2009-03-23
  • 打赏
  • 举报
回复
<script type="text/javascript">
function selectChanged(id)
{

var province = document.getElementById(id);
var pindex = id.selectedIndex; //索引的值
var pValue = id.options[pindex].value; //绑定的DataValueField的值
//var pText = id.options[pindex].text; //绑定的DataTextField的值
alter(pindex +pValue +pText );

}

</script>
上面代码是加在js里面的吗?
<input type="hidden" runat="server" id="hidprovince" onchange="selectChanged(this);" />
这个在页面?
vlysses 2009-03-23
  • 打赏
  • 举报
回复
用hidden记录javascript传过来的select的值,然后回传服务器时,在cs代码中string sSelectedValue=hidprovince.value;
zmm12 2009-03-23
  • 打赏
  • 举报
回复
<input type="hidden" runat="server" id="hidprovince" onchange="selectChanged(this);" />
zmm12 2009-03-23
  • 打赏
  • 举报
回复
<script type="text/javascript">
function selectChanged(id)
{

var province = document.getElementById(id);
var pindex = id.selectedIndex; //索引的值
var pValue = id.options[pindex].value; //绑定的DataValueField的值
//var pText = id.options[pindex].text; //绑定的DataTextField的值
alter(pindex +pValue +pText );

}

</script>

62,267

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧