<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 省就选中 '新疆' 而城市就选中 '塔城'大哥帮我看看啊,看看有什么办法
<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 省就选中 '新疆' 而城市就选中 '塔城'大哥帮我看看啊,看看有什么办法
然后在</form>前根据这个hidden的值
执行一段js函数就可以了<input type="hidden" runat="server" id="hidCityCode" />document.getElementById("Area_code").value = document.getElementById("hidCityCode").value;//城市选中
//省份选中你可以根据城市的Code选中,具体函数自己写
<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);// //即會自動選擇 新疆
<script>
var temp="<%=area_code%>";
</script>
當然,要保證 area_code是後台的全局變量,並且在後吧的 load事件裡賦於了初值