若依框架——>三級聯動 新增,預設修改
add.html
<div class="row">
<label class="col-xs-2 control-label">學校:</label>
<div class="col-xs-4">
<select id="aschool" >
<option value="">請選擇學校</option>
</select>
</div>
</div>
<div class="row">
<label class="col-xs-2 control-label">年級:</label>
<div class="col-xs-4">
<select id="agrade" >
<option value="">請選擇年級</option>
</select>
</div>
</div>
<div class= " row" >
<label class="col-xs-2 control-label">班級:</label>
<div class="col-xs-4">
<select class="form-control" id="aclasses" name="cid">
<option value="">請選擇班級</option>
</select>
</div>
</div>
js
$(document).ready(function() { //頁面載入時執行此函式 放在最前端
/* 三級聯動 */
$.ajax({
url: ctx + "system/school/select",
type: 'GET',
success:function (data) {
<!--清空下拉框中的快取-->
$("#aschool").empty();
<!--避免下拉框的值不變-->
$("#aschool").append("<option value=''>請選擇學校</option>");
<!--使用迴圈解析後端傳來的資料,並用使用js動態拼接html語言-->
for (var i = 0; i < data.length; i++){
$("#aschool").append("<option value='" + data[i].scid + "'>" + data[i].sname + "</option>");
}
}
});
$("#aschool").change(function () {//同上面一樣
// alert($("#aschool").val())
$.ajax({
url: ctx + "system/grade/select",
type: 'GET',
data: {
scid: $("#aschool").val(),
},
success:function (data) {
$("#agrade").empty();
$("#agrade").append("<option value=''>請選擇年級</option>");
for (var i = 0; i < data.length; i++){
$("#agrade").append("<option value='" + data[i].gid + "'>" + data[i].gname + "</option>");
}
}
});
});
$("#agrade").change(function () {//同上面一樣
// alert($("#agrade").val())
$.ajax({
url: ctx + "system/classes/select",
type: 'GET',
data: {
gid: $("#agrade").val(),
},
success:function (data) {
$("#aclasses").empty();
$("#aclasses").append("<option value=''>請選擇班級</option>");
for (var i = 0; i < data.length; i++){
$("#aclasses").append("<option value='" + data[i].cid + "'>" + data[i].cname + "</option>");
}
}
})
});
});
Service層
GradelService
/* 三級聯動 */
public List<GXGrade> selectGradeBid1(Integer scid);
ClassesService
//聯動
public List<GXClasses> selectClassBid1(Integer gid);
Controller層
SchoolController 最高層
/* 三級聯動 */
@GetMapping("/select")
@ResponseBody
public List<GXSchool> select(){
List<GXSchool> list1 = aschoolService.selectSchoolList(new GXSchool());
return list1;
}
GradeController
/* 三級聯動 */
@GetMapping("/select")
@ResponseBody
public List<GXGrade> select(Integer scid){
List<GXGrade> list1 = gradeService.selectGradeBid1(scid);
return list1;
}
ClassesController
/* 聯動 */
@GetMapping("/select")
@ResponseBody
public List<GXClasses> select(Integer gid){
List<GXClasses> list1 = classesService.selectClassBid1(gid);
return list1;
}
ClassesMapper.xml
<!-- 聯動 -->
<select id= "selectClassBid1" parameterType="Integer" resultMap="GXClassesResult">
<include refid="selectClassesVo" />
where aclass.gid = #{aclasses.gid}
</select>
GradeMapper.xml
<!-- 三級聯動 -->
<select id= "selectGradeBid1" parameterType="Integer" resultMap="GXGradeResult">
<include refid="selectGradeVo" />
where agrade.scid = #{scid}
</select>
預設修改
edit.html
<div class="form-group">
<label class="col-sm-2 control-label is-required">學生學校:</label>
<div class="col-sm-10">
<select id="aschool" class="form-control">
<option value="">請選擇學校</option>
<option th:each="sc:${school}" th:value="${sc.scid}" th:text="${sc.sname}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label is-required">學生年級:</label>
<div class="col-sm-10">
<select id="agrade" class="form-control">
<option value="">請選擇年級</option>
<option th:each="g:${Grade}" th:value="${g.gid}" th:text="${g.gname}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label is-required">學生班級:</label>
<div class="col-sm-10">
<select id="aclasses" class="form-control" name="cid" >
<option value="">請選擇班級</option>
<option th:each="cl:${Classes}" th:value="${cl.cid}" th:text="${cl.cname}" th:field="*{cid}"></option>
</select>
</div>
</div>
js
//聯動修改預設
$(document).ready(function () {
//獲取controller層的函式,進行預設選中
var gid = [[${gradeId}]];
var scid = [[${schoolId}]];
$("#agrade").val(gid);
// alert(gid);
$("#aschool").val(scid);
},
$("#aschool").change(function () {//同上面一樣
$.ajax({
url: ctx + "system/grade/select",
type: 'GET',
data: {
gid: $("#aschool").val(),
},
success:function (data) {
$("#agrade").empty();
$("#agrade").append("<option value=''>請選擇</option>");
for (var i = 0; i < data.length; i++){
$("#agrade").append("<option value='" + data[i].gid + "'>" + data[i].gname + "</option>");
}
}
})
}),
$("#agrade").change(function () {//同上面一樣
$.ajax({
url: ctx + "system/classes/select",
type: 'GET',
data: {
gid: $("#agrade").val(),
},
success:function (data) {
$("#aclasses").empty();
$("#aclasses").append("<option value=''>請選擇班級</option>");
for (var i = 0; i < data.length; i++){
$("#aclasses").append("<option value='" + data[i].cid + "'>" + data[i].cname + "</option>");
}
},
})
}),
)
StudentController
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") int id, ModelMap mmap){
mmap.put("student", studentService.selectStudentById(id));
mmap.put("school",schoolService.selectSchoolList(new GXSchool()));
mmap.put("grade",gradeService.selectGradeList(new GXGrade()));
//通過id進行判斷並且取值,通過id進行逐層查詢獲取id,先向上準確查詢,在向下模糊查詢,預設選中在下面。
String classes1= studentService.selectStudentById(id).getCid();
String grade1 = classesService.selectClassesByCid(Integer.parseInt(classes1)).getGid();
int school1 = gradeService.selectGradeBygid(Integer.parseInt(grade1)).getScid();
mmap.put("classId",classes1);
mmap.put("gradeId",grade1);
mmap.put("schoolId",school1);
mmap.put("Grade", gradeService.selectGradeBid1(school1));
mmap.put("Classes", classesService.selectClassBid1(Integer.parseInt(grade1)));
return prefix + "/edit";
}
相關文章
- jeefast框架 修改的下拉框三級聯動預設顯示後臺資料AST框架
- 若依如何修改logoGo
- Vantui---picker三級聯動設定預設值UI
- 若依管理系統新增redisRedis
- 01【若依框架】 登入許可權框架
- 若依dockerDocker
- CentOS 7 新增win7啟動項——修改預設啟動項CentOSWin7
- 小程式 三級地址聯動
- Laravel-admin 三級聯動 or 多級聯動 編輯 and 新建Laravel
- ubuntu修改預設啟動核心Ubuntu
- 若依框架匯入阿里OSS報錯問題解決方案框架阿里
- 【Java】若依(ruoyi)——4.部署Java
- Ubuntu 修改預設啟動選單Ubuntu
- vue 省市區三級聯動外掛Vue
- 若依管理系統前端實踐前端
- 若依管理系統視訊教程
- .Net Core 修改預設的啟動埠
- ubuntu修改預設系統啟動項Ubuntu
- 若依部署到伺服器之後修改頭像無法展示(分離版)伺服器
- 03【若依框架解讀】Tree樹形結構的控制(選單,部門)框架
- knockout.js 省、市、區三級聯動JS
- 用Vue實現省市區三級聯動Vue
- MySQL-修改欄位型別、設定預設值,以及新增註釋MySql型別
- Recoil 預設值及資料級聯的使用
- 三大框架---angular---依賴注入框架Angular依賴注入
- 若依 RuoYi4.6.0 程式碼審計
- Flutter自定義View——仿高德三級聯動DrawerFlutterView
- [外掛擴充套件]三級聯動外掛!!!!!!!!套件
- 微信小程式三級聯動地址選擇器微信小程式
- Android省市區三級聯動控制元件Android控制元件
- 出生日期三級聯動下拉選單
- jquery select選中表單特效三級聯動jQuery特效
- Mac 修改預設 shellMac
- .NET之預設依賴注入依賴注入
- css實現修改預設滾動條樣式CSS
- 【Java】若依(ruoyi)——3.專案啟動(前後端分離版)Java後端
- win10怎麼設定預設瀏覽器 三種方式修改預設遊覽器Win10瀏覽器
- 基於layui的省市區三級聯動(資料互動)UI