В моем проекте Spring я должен динамически создавать флажки, используя Ajax.Я могу сгенерировать флажки из базы данных, но их проверенные значения не сохраняются.
Ниже приведен Ajax-вызов контроллера:
$.ajax({
type: "GET",
url: "http://localhost:8080/ssdms/getLoc",
data: {dept_id: dept_id},
dataType: 'json',
success:
function(response){
for ( var i = 0, len = response.length; i < len; ++i) {
var location = response[i];
$('#deptLocation').append("<input type=\"checkbox\" value=\"" + location.id + "\">"+location.desc + "</input><br/>");
}
}
});
Ниже приведен код контроллера: -
@RequestMapping(value = "/getLoc", method = RequestMethod.GET)
public @ResponseBody List<Location> getLocation(@RequestParam("dept_id") int did, HttpServletRequest request,
HttpServletResponse response) {
Department dept = deptService.getDeptDetailsById(did);
List<Location> locations = deptService.getAllLocations();
return locations;
}
В представлении я использую следующий код:
<div class="form-group col-xs-12 col-sm-12 col-md-6">
<label for="deptLocation">Location of Dept</label>
<div class="checkbox" id="deptLocation">
</div>
</div>
Сохраненные сведения о местоположении возвращаются deptService.getDeptDetailsById(did)
, но я не могу сопоставить их с динамически генерируемыми флажками, поэтому флажки не установлены.Также, когда я сохраняю форму, null
сохраняется в колонке местоположений таблицы dept.Я не могу использовать th:field="*{deptLocation}"
в динамически генерируемом коде флажка, поэтому он не связан с сущностью.