你查询的时候表单肯定提交的有name为或者类似Province,City,CityCode三个值获取这三个值,然后调用InitCitySelect(),将那三个值作为参数传给它具体调用时间你自己把握,可以是window.onload的时候
解决方案 »
- 求救高手。。。一个SQL问题。。。
- 请问网站的错误页面和未找到页面到底如何做?
- javascriptz中控制按钮位置问题
- ajax 的一个问题
- 用blob把文件插入oracle时,出现Io 异常: Connection reset blob
- 为什么我用getinputStream接收过来的数据都带个口???
- 为什么我在网页上显示不出记录来,部分源代码如下:select * from drug where id='"+digid+"';
- (^Θ^) 怎样獲得封装库包(*.jar)文件名?
- JSP学好了,可是公司又不要我了,这年月。。。。
- 使用JSP的分页技术浏览数据库信息,请问如何实现??? 急急!!
- fckeditor使用
- 寻求高级JAVA程序员合作开发网站
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript">
var data = {
sheng: [{id:1,name:"北京"}, {id:2,name:"邯郸"}],
qu: {id_1:[{id:3,name:"海淀区"}, {id:4,name:"东城区"}],
id_2:[{id:5,name:"南"}, {id:6,name:"东"}]},
jiedao: {id_3:[{id:11,name:"盛唐饭店"},{id:12,name:"知春路"},{id:13,name:"稻香园"}],
id_4:[{id:14,name:"东四十条"},{id:15,name:"港澳中心"},{id:16,name:"东直门"}],
id_5:[{id:17,name:"电力小区"},{id:18,name:"电力医院"}],
id_6:[{id:19,name:"北大青鸟"},{id:20,name:"福瑞特"},{id:21,name:"东信家园"}]}
};
function init(){
/*处理省下拉列表框*/
var shengHTML = document.getElementById("sheng");
// 移除下拉列表中原有内容
while(shengHTML.childNodes.length > 0){
shengHTML.removeChild(
shengHTML.childNodes[0]);
}
// 添加option
var sheng = data.sheng;
for(var i = 0; i< sheng.length; i++){
var op = document.createElement("option");
op.value = sheng[i].id;
var text = document.createTextNode(sheng[i].name);
op.appendChild(text);
shengHTML.appendChild(op);
}
/*处理区下拉列表框*/
var quHTML = document.getElementById("qu");
// 移除下拉列表中原有内容
while(quHTML.childNodes.length > 0){
quHTML.removeChild(
quHTML.childNodes[0]);
}
// 添加option 这里的qu代表第一个省的所有区
var qu = data.qu["id_" + sheng[0].id];
for(var i = 0; i< qu.length; i++){
var op = document.createElement("option");
op.value = qu[i].id;
var text = document.createTextNode(qu[i].name);
op.appendChild(text);
quHTML.appendChild(op);
}
/*处理街道下拉列表框*/
var jiedaoHTML = document.getElementById("jiedao");
// 移除下拉列表中原有内容
while(jiedaoHTML.childNodes.length > 0){
jiedaoHTML.removeChild(
jiedaoHTML.childNodes[0]);
}
// 添加option 这里的jiedao代表第一个区下的所有街道
var jiedao = data.jiedao["id_"+qu[0].id];
for(var i = 0; i< jiedao.length; i++){
var op = document.createElement("option");
op.value = jiedao[i].id;
var text = document.createTextNode(jiedao[i].name);
op.appendChild(text);
jiedaoHTML.appendChild(op);
}
}
function shengChange(){
var shengHTML = document.getElementById("sheng");
//alert('id是 ' + shengHTML.options[shengHTML.selectedIndex].value);
var shengId = shengHTML.options[shengHTML.selectedIndex].value;
/*处理区下拉列表框*/
var quHTML = document.getElementById("qu");
// 移除下拉列表中原有内容
while(quHTML.childNodes.length > 0){
quHTML.removeChild(
quHTML.childNodes[0]);
}
// 添加option 这里的qu代表所选中的省的所有区
var qu = data.qu["id_" + shengId];
for(var i = 0; i< qu.length; i++){
var op = document.createElement("option");
op.value = qu[i].id;
var text = document.createTextNode(qu[i].name);
op.appendChild(text);
quHTML.appendChild(op);
}
/*处理街道下拉列表框*/
var jiedaoHTML = document.getElementById("jiedao");
// 移除下拉列表中原有内容
while(jiedaoHTML.childNodes.length > 0){
jiedaoHTML.removeChild(
jiedaoHTML.childNodes[0]);
}
// 添加option 这里的jiedao代表第一个区下的所有街道
var jiedao = data.jiedao["id_"+qu[0].id];
for(var i = 0; i< jiedao.length; i++){
var op = document.createElement("option");
op.value = jiedao[i].id;
var text = document.createTextNode(jiedao[i].name);
op.appendChild(text);
jiedaoHTML.appendChild(op);
}
}
function quChange(){
var quHTML = document.getElementById("qu");
//alert('id是 ' + quHTML.options[quHTML.selectedIndex].value);
var quId = quHTML.options[quHTML.selectedIndex].value;
/*处理街道下拉列表框*/
var jiedaoHTML = document.getElementById("jiedao");
// 移除下拉列表中原有内容
while(jiedaoHTML.childNodes.length > 0){
jiedaoHTML.removeChild(
jiedaoHTML.childNodes[0]);
}
// 添加option 这里的jiedao代表所选中的区下的所有街道
var jiedao = data.jiedao["id_"+quId];
for(var i = 0; i< jiedao.length; i++){
var op = document.createElement("option");
op.value = jiedao[i].id;
var text = document.createTextNode(jiedao[i].name);
op.appendChild(text);
jiedaoHTML.appendChild(op);
}
}
</script>
</head>
<body>
<input type="button" value="初始化" onclick="init();"/>
<select id="sheng" onchange="shengChange();"></select>
<select id="qu" onchange="quChange();"></select>
<select id="jiedao"></select>
</body>
</html>
我想用纯JS。
<form name='infoguide' method='get' action='search.php'>
<select id="selprovince" size="1" name="province">
<option selected> </option>
</select>
<select id="selCity" size="1" name="city">
<option selected> </option>
</select>
<script language="javascript">
InitCitySelect2(document.profile.selprovince,document.profile.selCity,**********);
</script>
<input type="submit">
网页中放置的是上面的内容,可以实现省市联动。是搜索时候用的,点击搜索<input type="submit"> 按钮后由'search.php'给处结果,此时
<select id="selprovince" size="1" name="province">
<option selected> </option>
</select>
<select id="selCity" size="1" name="city">
<option selected> </option>
</select>
这两个省市的下拉框又变成“请选择”了,在提交的时候会又刷新。我想要提交后得到搜索结果页面,但是这两个下拉框返回刚才选择的省市,就是刚刚选择的是默认选中,而不是变为初始时候的“请选择”。小弟谢过了
function InitCitySelect2(selProvince,selCity,h.k)
{
InitCitySelect(selProvince,selCity)
for(i=0;i <selProvince.length;i++)
selProvince.options[h].selected=true;
Province_onchange();
selCity.options[k].selected=true;
}
我把最后的那个改成这样了,根据返回的selCity和selprovince判断h和k的值,然后用
<script language="javascript">
InitCitySelect2(document.profile.selprovince,document.profile.selCity,h,k);
</script>
呵呵,这样就可以了