一款联动菜单,利用了js php mysql实现的无刷新效果,有需要的朋友可以直接下载哦。
function removeOptions(selectObj){
if (typeof selectObj != 'object'){
selectObj = document.getElementById(selectObj);
} // 原有选项计数
var len = selectObj.options.length;
for (var i=0; i < len; i++){ // 移除当前选项
selectObj.options[0] = null;
}
}
function setSelectOption(selectObj, optionList, firstOption, selected) {
if (typeof selectObj != 'object'){
selectObj = document.getElementById(selectObj);
} // 清空选项
removeOptions(selectObj); // 选项计数
var start = 0; // 如果需要添加第一个选项
if (firstOption){
selectObj.options[0] = new Option(firstOption, ''); // 选项计数从 1 开始
start ++;
}
var len = optionList.length;
for (var i=0; i < len; i++){ // 设置 option
selectObj.options[start] = new Option(optionList[i].txt, optionList[i].val); // 选中项
if(selected == optionList[i].val){
selectObj.options[start].selected = true;
} // 计数加 1
start ++;
}
} //-->
var sidArr = [];
$sql="select * from ptypes where sid = 0 and ssid =0";
$result=mysql_query($sql,$conn) or die("查询数据库出错1");
while($row=mysql_fetch_object($result))
{
$i=0;
$rs2="";
$sql2="select * from ptypes where sid='".$row->id."'";
$result2=mysql_query($sql2,$conn) or die("查询数据出错2");
while($row2=mysql_fetch_object($result2))
{
if ($i==0){
$t="";
}else{
$t=",";
}
$rs2.=$t."{txt:'".$row2->title."',val:'".$row2->id."'}n";
$n=0;
$rs3="";
$sql3="select * from ptypes where ssid='".$row2->id."'";
$result3=mysql_query($sql3,$conn) or die("查询是数据库出错3");
while($row3=mysql_fetch_object($result3))
{
if ($n==0)
{
$t1="";
}else{
$t1=",";
}
$rs3.=$t1."{txt:'".$row3->title."',val:'".$row3->id."'}n";
$n=1;
}
echo("sidArr['".$row2->id."']=[".$rs3."];");
$i=1;
}
echo("sidArr['".$row->id."']=[".$rs2."];");
}
?>
function setCity(province) {
removeOptions(document.getElementById('sid'));
removeOptions(document.getElementById('ssid'));
setSelectOption('sid', "", '-请选择-');
setSelectOption('ssid', "", '-请选择-');
if (!sidArr[province] || sidArr[province]==""){
document.getElementById('sid').disabled=true;
document.getElementById('ssid').disabled=true;
}else{
document.getElementById('sid').disabled=false;
document.getElementById('ssid').disabled=false;
setSelectOption('sid', sidArr[province], '-请选择-');
}
}
function setssid(province) {
removeOptions(document.getElementById('ssid'));
setSelectOption('ssid', "", '-请选择-');
if (!sidArr[province] || sidArr[province]==""){
document.getElementById('ssid').disabled=true;
}else{
document.getElementById('ssid').disabled=false;
setSelectOption('ssid', sidArr[province], '-请选择-');
}
}
-请选择-
$sql="select * from ptypes where sid=0 and ssid = 0";
$result=mysql_query($sql,$conn) or die("返回数据记录出错!");
while($row=mysql_fetch_object($result))
{
echo ("".$row->title."");
}
?>
一级
-请选择-
二级
-请选择-
三级
(责任编辑:最模板)