三级联动国家省城市的问题

hydral 2015-07-22 05:00:57
三级联动已经实现,需求是:
当点击国家下拉表列查询时,显示国家中所有城市,下拉列表将选择国家设为默认值,省份下拉栏中传入根据国家查出来的省份。
当点击省份下拉列表查询时,显示省份中所有城市,下拉列表将选择省份设为默认值,城市下拉栏中传入根据省份查出来的城市。
当点击城市下拉列表查询时,显示城市,下拉列表将选择城市设为默认值。
那么如何将选中的省份和城市设为默认值,代码如下:求指教谢谢

<label style="width:120px;">国家</label>
<select id="nationalId" name="nationalId" class="form_input_short" style="width:140px;" onchange="querycountry();" >
<option value >请选择国家</option>
<#if list?exists>
<#list list as nationalList1>
<option value="${nationalList1.nationalId!}"
<#if nationalId?exists>
<#if nationalList1.nationalId=='${nationalId!}'>
selected="selected"
</#if>
</#if>
>${nationalList1.nationalName!}</option>
</#list>
</#if>
</select>
</div>
<div class="form_row">
<label style="width:120px;">省份</label>
<select id="provinceId" name="provinceId" class="form_input_short" style="width:140px;" onchange="queryprovince();">
<option value >请选择省份</option>
<option value="" > </option>
</select>
<label style="margin-left:40px;width:120px;">城市</label>
<select id="areaId1" name="areaId1" class="form_input_short" style="width:140px;">
<option value >请选择城市</option>
<option value="" > </option>
</select>
</div>



function querycountry(){
if($("#nationalId").val()!=""){
$.ajax({
url:"${basePath}manage/areaList/Prov",
type:"post",
dataType:"json",
data:{nationalId:$("#nationalId").val()},
success:function(data){
if(data !=undefined && data.success){
var d=data.data;
var arr=new Array();
for(var i=0;i<d.length;i++){
arr.push("<option value='"+d[i].provinceId+"'>"+d[i].provinceName+"</option>");
}
$("#provinceId").html(arr.join(""));
}
},
error:function(){
alert("连接超时,请刷新后重试!");
}
})
}
else{
$("#provinceId").html("<option value=''>请选择省份</option>");
}
}

function queryprovince(){
if($("#provinceId").val()!=""){
$.ajax({
url:"${basePath}manage/areaList/City",
type:"post",
dataType:"json",
data:{provinceId:$("#provinceId").val()},
success:function(data){
if(data !=undefined && data.success){
var d=data.data;
var arr=new Array();
for(var i=0;i<d.length;i++){
arr.push("<option value='"+d[i].areaId+"'>"+d[i].areaName+"</option>");
}
$("#areaId1").html(arr.join(""));

}

},
error:function(){
alert("连接超时,请刷新后重试!");
}
})
}
else{
$("#areaId1").html("<option value=''>请选择城市</option>");
}
}
...全文
136 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hydral 2015-07-29
引用 1 楼 shijing266 的回复:
为啥不用三元运算符? 直接判断等不等于,然后相等就selected就是
<option value="" ${fromOrderId==null || fromOrderId==''?selected:"" }>全部订单</option>
                  <c:forEach items="${listOrderType}" var="orderType">
                  	<option value="${orderType.orderTypeId}" ${fromOrderId==orderType.orderTypeId?"selected":""}>${orderType.orderTypeDesc}</option>
                  </c:forEach>
谢谢哦,已经解决了
回复
为啥不用三元运算符? 直接判断等不等于,然后相等就selected就是
<option value="" ${fromOrderId==null || fromOrderId==''?selected:"" }>全部订单</option>
                  <c:forEach items="${listOrderType}" var="orderType">
                  	<option value="${orderType.orderTypeId}" ${fromOrderId==orderType.orderTypeId?"selected":""}>${orderType.orderTypeDesc}</option>
                  </c:forEach>
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-07-22 05:00
社区公告
暂无公告