一个省份选择的js问题
<form id= "Form1 " method= "post " runat= "server ">
<script language= "javascript ">
function provinceSelChange(selname)
{
var index=Form1.Province.value;
pList.getOptionAreasString(index,selname);
}
function area(name,code)
{
this.name=name;
this.code=code;
}
function province(name,code)
{
this.data=new Array();
this.name=name;
this.code=code;
this.add=area_add;
}
function provinceList()
{
this.data=new Array();
this.add=province_add;
this.addAt=province_addAt;
this.getOptionString=provinceList_getOptionString;
this.getOptionAreasString=provinceList_getAreasOptionString;
}
function area_add(area)
{
this.data[this.data.length]=area;
}
function province_add(province)
{
this.data[this.data.length]=province;
}
function province_addAt(i,area)
{
var province=this.data[i];
province.add(area);
}
function provinceList_getOptionString()
{
var temp= " ";
for(var i=0;i <this.data.length;i++)
temp+= " <option value= "+i+ "> "+this.data[i].name;
return temp;
}
function provinceList_getAreasOptionString(index,selname)
{
var temp= " ";
var prov=this.data[index];
if(prov==null||prov.data.length==0)
{
selname.length=1;
selname.options[0].text= "没有城市 ";
selname.options[0].value= "no ";
return " <option value=no> 没有城市 </option> ";
}
selname.length=0;
for(var i=0;i <prov.data.length;i++)
{
selname.length++;
selname.options[i].text=prov.data[i].name;
selname.options[i].value=prov.data[i].code;
temp+= " <option value= "+prov.data[i].code+ "> "+prov.data[i].name;
}
return temp;
}
var pList=new provinceList();
</script>
<script language= "javascript ">
pList.add(new province( "山西 ", "山西 "));
pList.addAt(0,new area( "朔州 ", "203 "));
pList.addAt(0,new area( "怀仁 ", "204 "));
pList.addAt(0,new area( "应县 ", "205 "));
pList.addAt(0,new area( "右玉 ", "206 "));
pList.addAt(0,new area( "山阴 ", "207 "));
pList.addAt(0,new area( "忻州 ", "208 "));
pList.addAt(0,new area( "原平 ", "209 "));
pList.add(new province( "新疆 ", "新疆 "));
pList.addAt(1,new area( "塔城 ", "2207 "));
pList.addAt(1,new area( "额敏 ", "2208 "));
pList.addAt(1,new area( "裕民 ", "2209 "));
pList.addAt(1,new area( "托里 ", "2210 "));
pList.addAt(1,new area( "哈密 ", "2211 "));
pList.addAt(1,new area( "马里坤 ", "2212 "));
</script>
<table width= "100% " border= "0 " cellspacing= "0 " cellpadding= "0 " align= "center ">
<tr>
<td height= "20 " width= "100% ">
<select name= "Province " id= "Province " style= "FONT-SIZE:12px " onchange= "provinceSelChange(Form1.Area_code) "
onKeyUP= "if(window.event.keyCode==13) document.Form1.Area_code.focus(); ">
<script language= "javascript ">
document.write(pList.getOptionString());
</script>
</select>
<select name= "Area_code " id= "Area_code " style= "FONT-SIZE:12px ">
<script language= "javascript ">
document.write(pList.getOptionAreasString(0,Form1.Area_code));
</script>
</select>
</td>
</tr>
</table>
</form>
这个是一个省份选择的 js 代码,没问题
但我现在要做一个是 后台赋值 让他有个 初始化的选中,比如 我后台赋值
2207 省就选中 '新疆 ' 而城市就选中 '塔城 '
大哥帮我看看啊,看看有什么办法
[解决办法]
哇。。。。
好长啊,眼睛都花了。。。
[解决办法]
太长了 不愿看
[解决办法]
后台给一个runat=server的hidden赋值
然后在 </form> 前根据这个hidden的值
执行一段js函数就可以了
<input type= "hidden " runat= "server " id= "hidCityCode " />
document.getElementById( "Area_code ").value = document.getElementById( "hidCityCode ").value;//城市选中
//省份选中你可以根据城市的Code选中,具体函数自己写
[解决办法]
Hidden域是比较方便
<asp:hiddenfield runat= "server "> </asp:hiddenfield>
[解决办法]
你的意思是根每二(城市的代),反定省的代是吧。
你把省的 value值也置成代:如
pList.add(new province( "山西 ", "20 "));
pList.add(new province( "新疆 ", "22 "));
假 temp是台.
var temp= "22007 ";
Area_code.value=temp; // 自的 '塔城 '
Province.value= "temp.substring(0,2);// //即自 新疆
[解决办法]
你的意思是根每二(城市的代),反定省的代是吧。
你把省的 value值也置成代:如
pList.add(new province( "山西 ", "20 "));
pList.add(new province( "新疆 ", "22 "));
假 temp是台.
var temp= "22007 ";
document.getElementById( "Area_code ").value=temp; // 自的 '塔城 '
document.getElementById( "Province ").value= "temp.substring(0,2);// //即自 新疆