java菜单动态加载功能_Javascript实现动态菜单添加
在注冊信息的時候,常常需要通過下拉菜單讓用戶選擇,而且希望用戶在第一個下拉框做的選擇,影響第二個下拉框的內容。有時候,如果第一個下拉框不作出選擇,第二個下拉框根本不會頁面上顯示,為了給用戶呈現一個更清晰的頁面。
先來看看效果:
Html源碼:
動態改變菜單Province:
Please Choose Province
HeBei
ShanDong
City:
Area:
Javascript源碼
$(document).ready(function () {
//找到三個下拉框
var ProvinceSelect = $(".Province").children("select");
var CitySelect = $(".City").children("select");
var AreaSelect = $(".Area").children("select");
var AddressSelect=$(".AddressSelect");
//給第二個下拉框注冊事件
ProvinceSelect.change(function () {
//1、獲取當前下拉框的值
var ProvinceValue = $(this).val();
//1.1只要第一個下拉框內容有變化,第三個下拉框就要隱藏起來
AreaSelect.parent().hide();
AddressSelect.hide();
AddressSelect.html("");
//2、如果值不為空,則顯示城市下拉框
if (ProvinceValue != "") {
CitySelect.html("");
$("Please Choose City").appendTo(CitySelect);
switch(ProvinceValue)
{
//實際項目中,這個城市數組肯定是在服務器獲取的,這里為了簡便,我就直接自定義了一個數組
//如果追求完美,這里還可以加一道緩存,防止重復獲取
case "HeBei":
var CityOfHeBei=["ShiJiaZhuang","CangZhou","LangFang"];
for(var i=0;i
$(""+CityOfHeBei[i]+"").appendTo(CitySelect);
}
break;
case "ShanDong":
var CityOfShanDon=["JiNan","DeZhou","QingDao"];
for(var i=0;i
$(""+CityOfShanDon[i]+"").appendTo(CitySelect);
}
break;
}
CitySelect.parent().show();
} else {
CitySelect.parent().hide();
}
});
//給第二個下拉框注冊事件
CitySelect.change(function () {
var CityValue = $(this).val();
AddressSelect.hide();
AreaSelect.parent().hide();
AddressSelect.html("");
if (CityValue != "") {
AreaSelect.html("");
$("Please Choose Area").appendTo(AreaSelect);
switch(CityValue)
{
//實際項目中,這個區數組肯定是在服務器獲取的,這里為了簡便,我就直接自定義了一個數組
//如果追求完美,這里還可以加一道緩存,防止重復獲取
case "ShiJiaZhuang":
var AreaOfCity=["GaoXinQu","KaiFaQu","XinHuaQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
case "CangZhou":
var AreaOfCity=["XinHuaQu","YunHeQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
case "LangFang":
var AreaOfCity=["AnCiQu","GuangYangQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
case "QingDao":
var AreaOfCity=["GaoXinQu","KaiFaQu","XinHuaQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
case "DeZhou":
var AreaOfCity=["XinHuaQu","YunHeQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
case "JiNan":
var AreaOfCity=["AnCiQu","GuangYangQu"];
for(var i=0;i
$(""+AreaOfCity[i]+"").appendTo(AreaSelect);
}
break;
}
AreaSelect.parent().show();
} else {
AreaSelect.parent().hide();
}
});
AreaSelect.change(function(){
var AreaValue=$(this).val();
AddressSelect.html("");
if (AreaValue!=""){
$("The Address Is --Province: "+ProvinceSelect.val()+" City: "+CitySelect.val()+" Area: "+AreaSelect.val()+"").appendTo(AddressSelect);
AddressSelect.show();
//alert("The Address Is Province: "+ProvinceSelect.val()+" City: "+CitySelect.val()+" Area: "+AreaSelect.val());
}
})
});
這里還引用了Jquery,貌似實現這個效果,用不用都無所謂,最近為了熟悉Jquery的用法,所以就加上了。
總結
以上是生活随笔為你收集整理的java菜单动态加载功能_Javascript实现动态菜单添加的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java三段式if_Java几种常用的断
- 下一篇: Java编写胖老鼠的交易_猫和胖老鼠