国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JQuery打造省市下拉框聯動效果

2024-05-06 16:06:10
字體:
來源:轉載
供稿:網友
考慮將需要動態刷新的內容自動拼接到前一個下拉框之后等等,用JQuery實現比較容易,代碼以省市聯動效果為例實現

做聯動效果,若是用純JavaScript來做,往往需要輔助頁面保存需要刷新的結果集,然后渲染到原頁面。考慮將需要動態刷新的內容自動拼接到前一個下拉框之后,當前一個下拉框onchange后,同級的后面的下拉框全部清除,然后重新拼接刷新的內容。用JQuery實現比較容易,代碼以省市聯動效果為例實現。

JSP頁面代碼如下:

復制代碼 代碼如下:


<li>
<p>生源地:</p>
<label>
<select onchange="refreshCity()">
<option value="">全部</option>
<c:forEach items="${provinceInfoList}" var="provinceInfo">
<option value="${provinceInfo.code}">${provinceInfo.provinceName}</option>
</c:forEach>
</select>
</label>
</li>


JavaScript代碼如下:

復制代碼 代碼如下:


function refreshCity(){
if($('#provinceCode').find('option:selected').val() == ""){
$('#provinceCode').parent().nextAll('lable').remove();
return;
}
//省份名稱
var provinceName = $('#provinceCode').find('option:selected').text();
provinceName = provinceName.substring(0,provinceName.length-4);
// 發出Json請求,查詢子下拉框選項數據
$.getJSON("<%=basePath%>baseInfo_getCitiesByProvinceId", {
proviceCode : $('#provinceCode').val()
}, function(data) {
// 如果有子選項,則創建子下拉框
if(data != null){
// 刪除下拉框父級<lable>后的所有同級<lable>
$('#provinceCode').parent().nextAll('lable').remove();
var childId = "city";
// 判斷是否存在下一級下拉框 不存在就創建
if($('#'+childId).length == 0){
// 創建一個<li>并創建一個<select>添加到id為extra的<ul>中
$("<lable><select ></select></li>").appendTo($('#base'));
}else{
//清空子下拉框內容
$('#' + childId).empty();
}
// 遍歷json串,填充子下拉框
$.each(data.city, function(i, item) {
$('#' + childId).append(
"<option value='"+item.code+"'>" + item.nameAndCode
+ "</option>");
});
}
});
}


根據省份獲取市的代碼如下:

復制代碼 代碼如下:


public void getCitiesByProvinceCode(String proviceCode, HttpServletResponse response) throws JsonParseException, JsonMappingException, JSONException, IOException{
ProvinceInfo provinceInfo = this.provinceAndCityInfoService.getProvinceInfoByProperty("code", proviceCode);
List<CityInfo> cityList = this.provinceAndCityInfoService.getCityListByProperty("belongProvinceId", provinceInfo.getId()+"");
// 初始化準備輸出的Json串
String cityJson = "";
// 遍歷集合,構造json串
if (cityList.size() > 0) {
cityJson = "{/"city/":[";
// 拼接查詢到的子項
for (int i = 0; i < cityList.size(); i++) {
CityInfo city = cityList.get(i);
String temp = "{/"code/":/"" + city.getCode()
+ "/",/"nameAndCode/":/"" + city.getName()+"("+ city.getCode() +")"
+ "/"}";
// 如果是集合中最后一項,則拼接結束符,否則用","隔開
if (i == cityList.size() - 1) {
cityJson = cityJson + temp + "]}";
} else {
cityJson = cityJson + temp + ",";
}
}
}
// 設置輸出的字符集和類型并輸出json串
response.setCharacterEncoding("UTF-8");
response.setContentType("json");
response.getWriter().print(cityJson);
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 鹰潭市| 乐山市| 宣汉县| 洱源县| 安康市| 兴和县| 灵山县| 敖汉旗| 名山县| 会泽县| 建德市| 乌鲁木齐县| 霍林郭勒市| 拜城县| 朔州市| 柞水县| 新余市| 宁国市| 绥化市| 历史| 浏阳市| 乌拉特中旗| 临汾市| 上栗县| 甘肃省| 裕民县| 江都市| 河池市| 梁河县| 炎陵县| 罗源县| 东乌珠穆沁旗| 伊宁市| 长春市| 修文县| 邓州市| 庆阳市| 潜山县| 巨野县| 巨野县| 德惠市|