有时候我们需要从html中获得controller传过来的数据参数一般都是可以通过ModelAndview
但是这种方法好像适用于jsp
所以直接上代码
@GetMapping("/add")
@RequiresPermissions("department:villagePromise:add")
String add(Model model){
//获取用户对应的villageId
int villageId = userService.getVillageByUserId(getUser().getUserId());
model.addAttribute("villageId", villageId);
//获取用户对应的parentid
int parentId = userService.getParentByUserId(getUser().getUserId());
model.addAttribute("parentId", parentId);
return "department/villagePromise/add";
}
代码controller中这样写在html中在中这样写
<head th:replace="includeV2::header(_, ~{::links})">
<th:block th:fragment="links">
<link th:href="@{/css/plugins/datapicker/datepicker3.css}" rel="stylesheet">
</th:block>
<script type="text/javascript">
var items = '[[${villageId}]]';
var parentId = '[[${parentId}]]';
</script>
</head>
这样就可以获得传过来的数据了
在div中这样写就可以获得了
<div class="form-group" style="display: none">
<label class="col-sm-3 control-label">上一级:</label>
<div class="col-sm-8">
<input id="parentId" name="parentId" class="form-control" type="text" th:value= "parentId">
</div>
</div>
<div id="villageDiv" class="form-group" style="display: none" >
<label class="col-sm-3 control-label">所属村社(村庄):</label>
<div class="col-sm-8">
<input id="townId" name="townId" type="hidden">
<input id="town" name="town" class="form-control" type="text"
style="cursor: pointer;" onclick="openDept()"
readonly="readonly" placeholder="所属村/社区">
</div>
</div>
在js中这样写因为有需要villageId所以js要这样写
$().ready(function() {
$("#villageId").val(items);
}