ajax源生做类似省市级联传值问题

qq_35208738 2016-09-22 10:42:44
后台数据,要传的是allRecruitQuestionKnowledge的knowledgePointName属性

private List<RecruitQuestionKnowledge> allRecruitQuestionKnowledge;
private RecruitQuestionBank recruitQuestionBank;
private RecruitQuestion recruitQuestion;
private String bankName="IT";
private StringBuffer aa;
public String getRecruitQuestionKnowledgeByBankName(){
allRecruitQuestionKnowledge=recruitQuestionKnowledgeService
.getRecruitQuestionKnowledgeByBankId(recruitQuestionBankService
.getRecruitQuestionBankByBankName(
recruitQuestion.getRecruitQuestionBank()
.getBankName())
.get(0).getBankId());


return "input";
}
...全文
693 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jamsunyue 2016-09-28
  • 打赏
  • 举报
回复
1. 可用jsp 输出一个 [{"perentName":"", "currentName":""}...] 2. 数据存放规则 perentName currentName ------------------------------------- TOP 招聘部门 招聘部门 IT研发部 IT研发部 前端开发 IT研发部 后台开发 3. js 的实现 <!DOCTYPE html> <html> <script language="javascript"type="text/javascript"> var dp; function setdata(v) { var nsel = document.createElement("select"); nsel.options.add(new Option("请选择","")); for(var x = 0; x < dp.length; x++) { var rr = dp[x]; if(rr.perentName == v) { nsel.options.add(new Option(rr.currentName,rr.currentName)); } } nsel.onchange = function() { setdata(this.value); } if(nsel.length > 1)document.getElementById("test").appendChild(nsel); } window.onload = function() { //dp = ... //用ajax获取jsp输出部分并转成 JSON dp = [{"perentName":"TOP","currentName":"招聘部门"}, {"perentName":"招聘部门","currentName":"IT研发部"}, {"perentName":"IT研发部","currentName":"前端开发"}, {"perentName":"IT研发部","currentName":"后台开发"}]; setdata("TOP"); } </script> <body> <div id="test"></div> </body> </html>
W2G 2016-09-23
  • 打赏
  • 举报
回复
ajax的方法也很好做,把参数传到后台返回相应的list,然后在success方法中

$.each(eval(msg), function(i, item) {           
                            $("<option value='" + item.id + "'>" + item.stuName + "</option>").appendTo($("#stuid"));
                        });
stuid在页面自己定义
W2G 2016-09-23
  • 打赏
  • 举报
回复
这是我当时做的,多级级联 http://blog.csdn.net/wwg2413980145/article/details/51151371
qq_35208738 2016-09-22
  • 打赏
  • 举报
回复
跪求大神,已经耗三天了
qq_35208738 2016-09-22
  • 打赏
  • 举报
回复
jsp代码 <body> <label class="control-label">招聘部门</label> <div class="btn-group"> <!-- <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> <span class="btn-text">IT研发部</span> <span class="caret"></span> </button> --> <select name="recruitQuestion.recruitQuestionBank.bankName" id="bankName" onchange="test()"> <c:forEach items="${allRecruitQuestionBank}" var="a"> <option value="${a.bankName}" <c:if test="${a.bankName eq a.bankName}">selected="selected"</c:if> >${a.bankName}</option> </c:forEach> <option selected = "selected" value="">--请选择--</option> </select> </div> </div> <div class="form-group col-xs-3 "> <label class="control-label">知识点</label> <div class="btn-group"> <!-- <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> <span class="btn-text">Android</span> <span class="caret"></span> </button> --> <select name="recruitQuestion.recruitQuestionKnowledge.knowledgePointName" id="knowledgePointName" "><!-- class="dropdown-menu" --> <option selected = "selected" value="">--请选择--</option> </select> </div> </body>
qq_35208738 2016-09-22
  • 打赏
  • 举报
回复
js代码 var request; function test(){ //AJAX判断浏览器的类型 if(window.XMLHttpRequest){ request = new XMLHttpRequest(); }else if(window.ActiveXObject){ request = new ActiveXObject("Microsoft.XMLHTTP"); } //设置回调函数 request.onreadystatechange = callback; //得到select的值 var s1 = document.getElementById("bankName").value; var url = "questionKnowledge_getRecruitQuestionKnowledgeByBankName.do?recruitQuestion.recruitQuestionBank.bankName=" + s1; request.open("GET",url,true); request.send(null); } function callback(){ //如果成功返回 if(request.readyState==4){ if(200 == request.status){ //得到返回的xml文件 var dom = request.responseText; var knowledgePointNames = dom.split(","); //调用清空函数 clearKnowledgePointName(); var knowledgePointName1 = document.getElementsById("knowledgePointName"); for(var i=0; i<knowledgePointNames.length; i++){ var option = document.createElement("option"); option.innertext = knowledgePointNames[i]; option.value = knowledgePointNames[i]; knowledgePointName1.appendChild (option); } } } } function clearKnowledgePointName(){ var knowledgePointName = document.getElementById("knowledgePointName"); knowledgePointName.options.length = 0; knowledgePointName.options[0] = new Option("==请选择==", "0"); }
  • 打赏
  • 举报
回复

52,778

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧