关于联动类的代码:
给个城市类的三框联动代码,具体思路是由JS从服务器上得到新的数据后插入页面。
这是联动页代码:
<!-- 这个JS负责执行函数 GETDATAW 从数据“推 送”页得到的JS代码,
功能 是将新产生的下拉框插入到对应的DIV中,以产生新的选 择列表-->
<script language="JavaScript" id="getareadata"></script>
<!-- 这个JS负责以不同的参数向数据“推送”页请求生成新的下拉列表框 -->
<script language="javascript">
<!--
function getdataw(id,obj)
{
if (obj !="f_qu")
{
phpfilename="getareadata.php?id="+id+"&obj="+obj;
document.getElementById("getareadata").src=phpfilename;
}
document.frmfarea.f_areadata.value=id;
document.frmtj.f_tjid.value=id;
}
//-->
</script>
<form action="index.php?action=admin_area&act=<? if($_GET[act]=='addd') echo 'tj'; else echo 'xslb';?>" method="post" name="frmfarea">
<table width="400" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td colspan="2" bgcolor="#FFF6E9">请选择地区:</td>
</tr>
<tr>
<td width="72" rowspan="3" bgcolor="#FFF6E9"><div align="center"></div></td>
<td width="322" bgcolor="#FFF6E9">
<select name="f_sheng" id="f_sheng" onChange="javascript:getdataw(this.value,this.name);">
<option value="-1" selected>==请选择省==</option>
<?php
$sqlaa="select * from sm_area where aa_upid=0 and aa_uptid=0 order by aa_name";
resultaa=@odbc_do($db,$sqlaa]$resultaa=@odbc_do($db,$sqlaa);
while (rstaa=@odbc_fetch_array($resultaa]$rstaa=@odbc_fetch_array($resultaa))
{
echo "<option value=\"$rstaa[aa_id]\">$rstaa[aa_name]</option>";
}
?>
</select></td>
</tr>
<tr bgcolor="#FFF6E9">
<td> <div id="showshi">
<select name="f_shi" id="f_shi" onChange="javascript:getdataw(this.value,this.name);">
<option value="-1" selected>==请选择市==</option>
</select></div></td>
</tr>
<tr bgcolor="#FFF6E9">
<td><div id="showqu">
<select name="f_qu" id="f_qu" onChange="javascript:getdataw(this.value,this.name);">
<option value="-1" selected>==请选择县/区==</option>
</select></div>
<input name="f_areadata" type="hidden" id="f_areadata">
</td>
</tr>
<tr align="center" bgcolor="#FFF6E9">
<td colspan="2"><input type="submit" name="Submit32" value="显示列表"></td>
</tr>
</table>
</form>
--------------------下面是数据“推送”页 getareadata.php 代码
<?php
header("Cache-Control: no-store, no-cache,must-revalidate");//必须
require("config/database.php");
if ($_GET[obj]=="f_sheng")
{//如果是省框变动则生成对应此省的市的下拉框代码
$tdiv="showshi";
$output="<select name='f_shi' onChange='javascript:getdataw(this.value,this.name);'><option value='-1' selected>==请选择市==</option>";
$sql="select aa_id,aa_name from sm_area where aa_upid=$_GET[id]";
}
else
{//如果是市框变动则生成对应此市的区的下拉框代码
$tdiv="showqu";
$output="<select name='f_qu' onChange='javascript:getdataw(this.value,this.name);'><option value='-1' selected>==请选择县/区==</option>";
$sql="select aa_id,aa_name from sm_area where aa_upid=$_GET[id]";
}
result=@odbc_do($db,$sql]$result=@odbc_do($db,$sql);
while (rst=@odbc_fetch_array($result]$rst=@odbc_fetch_array($result))
{//生成新的OPTION列表
$output.="<option value='$rst[aa_id]'>$rst[aa_name]</option>";
}
$output.="</select>";
echo "document.getElementById(\"$tdiv\").innerHTML=\"$output\";";
//本页生成的JS代码由 id="getareadata" 的JS执行。最后一行即是将生成的SELECT框代码插入到对应的DIV标签中。
?>