//看看这个,代码不多,数据可以从服务器端来初始化,应该满足你的要求了<html>
<head>
<script language=javascript>
var arr="浙江|江苏|安徽|江西";var arr0 = "杭州|宁波|温州|绍兴"; //这些数据可以从数据库中取得
var arr1 = "南京|苏州|无锡|常州";
var arr2 = "合肥|翕县|黄山|祁门";
var arr3 = "南昌|九江|赣州|上饶"; var arr00 = "杭州A区|杭州B区";
var arr01 = "宁波A区|宁波B区";
var arr02 = "温州A区|温州B区";
var arr03 = "绍兴A区|绍兴B区"; var arr10 = "南京A区|南京B区";
var arr11 = "苏州A区|苏州B区";
var arr12 = "无锡A区|无锡B区";
var arr13 = "常州A区|常州B区"; var arr20 = "合肥A区|合肥B区";
var arr21 = "翕县A区|翕县B区";
var arr22 = "黄山A区|黄山B区";
var arr23 = "祁门A区|祁门B区"; var arr30 = "南昌A区|南昌B区";
var arr31 = "九江A区|九江B区";
var arr32 = "赣州A区|赣州B区";
var arr33 = "上饶A区|上饶B区"; //alert(eval("arr"+2+1));
function AddOptions(dltObj,arrObj)
{
dltObj.innerHTML="";
var arrLocation=arrObj.split("|");
for(var i=0;i<arrLocation.length;i++){
var opt=document.createElement("OPTION");
dltObj.add(opt);
opt.value=i;
opt.text=arrLocation[i];
}
}
function init(){
AddOptions(dltProvince,eval('arr'));
AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));
AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));
ShowValue();
}
function ShowValue(){
var dltAr=document.getElementById("dltArea");
var hidId=document.getElementById("OutValue");
var txtText=document.getElementById("txtOutText");
hidId.value=dltAr.options[dltAr.selectedIndex].value;
txtText.value=dltAr.options[dltAr.selectedIndex].text;}
</script>
</head>
<body onLoad="init();">
<table width="300" cellpading="0" cellspacing="0" border="2">
<tr>
<td width="100"><select id="dltProvince" onchange="AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltCity" onchange="AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltArea" style="width:100%" onchange="ShowValue()"></select></td>
<td width="100">
<input type="hidden" id="OutValue" value="">
<input type="text" id="txtOutText" style="width:100%">
</td>
</tr>
</table>
</body>
</html>
<head>
<script language=javascript>
var arr="浙江|江苏|安徽|江西";var arr0 = "杭州|宁波|温州|绍兴"; //这些数据可以从数据库中取得
var arr1 = "南京|苏州|无锡|常州";
var arr2 = "合肥|翕县|黄山|祁门";
var arr3 = "南昌|九江|赣州|上饶"; var arr00 = "杭州A区|杭州B区";
var arr01 = "宁波A区|宁波B区";
var arr02 = "温州A区|温州B区";
var arr03 = "绍兴A区|绍兴B区"; var arr10 = "南京A区|南京B区";
var arr11 = "苏州A区|苏州B区";
var arr12 = "无锡A区|无锡B区";
var arr13 = "常州A区|常州B区"; var arr20 = "合肥A区|合肥B区";
var arr21 = "翕县A区|翕县B区";
var arr22 = "黄山A区|黄山B区";
var arr23 = "祁门A区|祁门B区"; var arr30 = "南昌A区|南昌B区";
var arr31 = "九江A区|九江B区";
var arr32 = "赣州A区|赣州B区";
var arr33 = "上饶A区|上饶B区"; //alert(eval("arr"+2+1));
function AddOptions(dltObj,arrObj)
{
dltObj.innerHTML="";
var arrLocation=arrObj.split("|");
for(var i=0;i<arrLocation.length;i++){
var opt=document.createElement("OPTION");
dltObj.add(opt);
opt.value=i;
opt.text=arrLocation[i];
}
}
function init(){
AddOptions(dltProvince,eval('arr'));
AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));
AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));
ShowValue();
}
function ShowValue(){
var dltAr=document.getElementById("dltArea");
var hidId=document.getElementById("OutValue");
var txtText=document.getElementById("txtOutText");
hidId.value=dltAr.options[dltAr.selectedIndex].value;
txtText.value=dltAr.options[dltAr.selectedIndex].text;}
</script>
</head>
<body onLoad="init();">
<table width="300" cellpading="0" cellspacing="0" border="2">
<tr>
<td width="100"><select id="dltProvince" onchange="AddOptions(dltCity,eval('arr'+dltProvince.selectedIndex));AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltCity" onchange="AddOptions(dltArea,eval('arr'+dltProvince.selectedIndex+dltCity.selectedIndex));ShowValue();" style="width:100%"></select>
</td>
<td width="100"><select id="dltArea" style="width:100%" onchange="ShowValue()"></select></td>
<td width="100">
<input type="hidden" id="OutValue" value="">
<input type="text" id="txtOutText" style="width:100%">
</td>
</tr>
</table>
</body>
</html>
解决方案 »
- 叫做个根据jquery组件名,动态导入所需js和css文件的东西,请教些问题
- 求一段JS代码
- JS传值问题:
- COMMENT_NODE 注释节点删除不到??
- javascript问题,高手帮忙啊.
- 如何用javascript实现窗口“最小化”功能
- 在线等,非常的着急。请务必帮忙。javascript问题.
- 救命呀
- 如何将中文字符编码为%20%CD这样的形式?
- <input type="file"控件能触发事件吗?
- 在线等待,急,如何将一个文件域中选定的文件名称传给另一个文件域?!!!!!!!
- 在页面中嵌入Iframe,Iframe页面表格的每一行都有链接.点击链接时Iframe总是会重新定位到第一行,怎么才可以在点击链接时,Iframe的滚动条保
建表:
****************************************************************
create table province(id int,name varchar(10)) --建立省表
create table city(id int,name varchar(10),pid int) --建立城市表 pid的值为省id的值,由此关联
insert into province values(1,'北京')
insert into province values(2,'贵州')
insert into city values(1,'北京1',1)
insert into city values(2,'北京2',1)
insert into city values(3,'贵州1',2)
insert into city values(4,'贵州2',2)
**************************************************************************
city3.asp //主调用文件
******************************************************************
<!--#include file="conn.asp"--><form name="form1">
省份<select name="sheng" onchange="city_change(this.value)">
<%
set rs=server.createobject("adodb.recordset")
sql="select id,[name] from province" '从省表中读出所有省的数据
rs.open sql,conn,1,1
do while not rs.eof
%>
<option value="<%=rs("id")%>"><%=trim(rs("name"))%></option>
<%
rs.movenext
loop
rs.close
conn.close
set rs=nothing
set conn=nothing
%>
</select>
城市:<select name="city"></select>
</form>
<iframe src="about:blank" width=0 height=0 name="city_url"></iframe> <%'此框架用于传值%>
<script language=javascript>
function city_change(data)
{
if(typeof(data)=="string") //如果是点省改变的话,接接到的data为字符型,如果是框架(city_send3.asp)中调用此函数则为数组!
{
window.city_url.location.href="city_send3.asp?id="+data;//把省的id传过去
}
else
{
form1.city.options.length=0;//先清空城市中的所有数据
for(k=0;k<data.length;k++)
{form1.city.add(new Option(data[k][1],data[k][0]));//用select中add建立option选项
}
}
}
</script>******************************************************************************
city_send3.asp //接收省id的值,然后根据省在数据库中查找需要的需市,然后调用主页面的函数
把值传回
*******************************************************************************
<!--#include file="conn.asp"-->
<script language=javascript>
var city_data=new Array(); //建立一个数据,用于存放所有城市数据
<%
set rs=server.createobject("adodb.recordset")
id=trim(request.querystring("id")) '接收传过来的省id
sql="select id,name from city where pid="&id 'pid 就是与省id关联的字段
rs.open sql,conn,1,1
city_count=0
do while not rs.eof
%>
city_data[<%=city_count%>]=new Array("<%=rs(0)%>","<%=rs(1)%>");
<%
rs.movenext
city_count=city_count+1
loop
rs.close
conn.close
set rs=nothing
set conn=nothing
%>
parent.city_change(city_data);//调用主框架的city_change函数,传的值city_data为数据库中所有城市数据
</script>
<select onchange='ok(this)' id=a><option>音乐<option>电影</select>
<select id=b></select>
<script>
function ok(objs){
if(objs.options[objs.selectedIndex].text=="音乐")b.outerHTML="<select id=b><option selected>音乐1<option>音乐2"
if(objs.options[objs.selectedIndex].text=="电影")b.outerHTML="<select id=b><option selected>电影1<option>电影2"
}ok(a)
</script>以上为实现思路,怎么结合后台楼主应该知道?
我也不知道为什么不显示得分数,而且CSDN经常会出现这种问题
你看看你的总分长了多少就知道了啊:)