使用struts 《s:select > 如何通过jQuery实现三级的级联

部分代码如下:<tr><td>部门:</td><td><inputid="depID_none"type="text"readonly="readonly"style="... 部分代码如下:
<tr>
<td > 部门:</td><td>
<input id="depID_none" type="text" readonly="readonly" style="display: none;" />
<s:select id="depID" list="tperlist" listValue="id.bmmc" listKey="id.bmid" theme="simple"></s:select>

</td>
</tr>
<tr>
<td >岗位:</td><td>
<input id="jobID_none" type="text" readonly="readonly" style="display: none;" />
<s:select id="jobID" list="tperlist" listValue="id.gwmc" listKey="id.gwid" theme="simple"></s:select>

</td>
</tr>
<tr>
<td >
姓名:</td><td>
<input id="xm_none" type="text" readonly="readonly" style="display: none;" />
<LABEL><s:select id="xm" list="tperlist" listValue="id.xm" listKey="id.ryid" theme="simple"></s:select></LABEL>
</td>
</tr>
展开
 我来答
woshixushigang
推荐于2016-06-21 · TA获得超过279个赞
知道小有建树答主
回答量:341
采纳率:100%
帮助的人:178万
展开全部
<!-- 徐士刚jquery实现异步三级联动 -->
<script type="text/javascript">
var flagflag = false;
$(function(){
$.post("dropdownlist!selectAllProvinceCityTown.action",function(data){
var json=eval(data);
for(var i = 0,len = json.length; i<len; i++){
if(${provinceid}==json[i].id){
$('#cityid').empty();
$('#cityid').append("<option value=\"\">---请选择---</option>");
$('#townid').empty();
$('#townid').append("<option value=\"\">---请选择---</option>");
$('#provinceid').append($("<option value='"+json[i].id+"' selected='selected'>"+json[i].name+"</option>"));
querycitybyprovince();

}

else
{
$('#provinceid').append($("<option value='"+json[i].id+"'>"+json[i].name+"</option>"));
}
}
},"json");

$('#provinceid').change(function(){
$('#cityid').empty();
$('#cityid').append("<option value=\"\">---请选择---</option>");
$('#townid').empty();
$('#townid').append("<option value=\"\">---请选择---</option>");
querycitybyprovince();
});
});
function querycitybyprovince()
{
var provinceid = document.getElementById('provinceid').value;
if(provinceid==1)
{
provinceid = -1;
}
$.post("dropdownlist!selectAllProvinceCityTown.action",{provinceid:provinceid},function(data){

var json=eval(data);

for(var i = 0,len = json.length; i<len; i++){
if(${cityid}==json[i].id){
$('#townid').empty();
$('#townid').append("<option value=\"\">---请选择---</option>");
$('#cityid').append($("<option value='"+json[i].id+"' selected='selected'>"+json[i].name+"</option>"));
querytownbycity();

}
else{
$('#cityid').append($("<option value='"+json[i].id+"'>"+json[i].name+"</option>"));
}
}

$('#cityid').change(function(){
//clearOptions(document.getElementById('townid'));
//$('#townid').empty();
$('#townid').empty();
$('#townid').append("<option value=\"\">---请选择---</option>");
querytownbycity();
},"json");
});
}

function querytownbycity()
{

var cityid = document.getElementById('cityid').value
$.post("dropdownlist!selectAllProvinceCityTown.action",{cityid:cityid},function(data){

var json=eval(data);
$('#townid').empty();
$('#townid').append("<option value=\"\">---请选择---</option>");
for(var i = 0,len = json.length; i<len; i++){
if(${townid}==json[i].id){
$('#townid').append($("<option value='"+json[i].id+"' selected='selected'>"+json[i].name+"</option>"));
}
else{
$('#townid').append($("<option value='"+json[i].id+"'>"+json[i].name+"</option>"));
}
}

},"json");
}

页面端:
<select name="provinceid" class="bk_01" id="provinceid"
style="WIDTH: 120px">
<option value="1">
---请选择---
</option>
</select>
<select name="cityid" class="bk_01" id="cityid"
style="WIDTH: 120px">
<option value="">
---请选择---
</option>
</select>
<select name="townid" class="bk_01" id="townid"
style="WIDTH: 120px">
<option value="">
---请选择---
</option>
</select>
希望对你有帮助,希望及时采纳,谢谢!
更多追问追答
追问
徐先生你好:
我的html部分是这样写的:
就是用struts2的标签可以自动取值,想在前台实现级联而非通过ajax访问后台,请问您有没什么好办法?
追答
就是说跳转到页面的时候 部门,姓名什么的都查出来了,你选择一个部门,把这个部门下的所有姓名展示出来?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式