我使用
spring mvc框架与百里叶模板引擎
问题是,我有1页多个复选框迭代唱百里香th:每个迭代器.当我点击多个复选框我想将复选框值传递给控制器方法..
问题是,我有1页多个复选框迭代唱百里香th:每个迭代器.当我点击多个复选框我想将复选框值传递给控制器方法..
HTML内容
<table> <tr th:each="q : ${questions}"> <h3 th:text="${q.questionPattern.questionPattern}"></h3> <div> <p > <input type="checkbox" class="ads_Checkbox" th:text="${q.questionName}" th:value="${q.id}" name="id"/> </p> </div> </tr> </table>
*控制器*
@RequestMapping(value = Array("/saveAssessment"),params = Array({ "save" })) def save(@RequestParam set: String,id:Long): String = { var userAccount: UserAccount = secService.getLoggedUserAccount println(userAccount) var questionSetQuestion:QuestionSetQuestion=new QuestionSetQuestion var questionSet: QuestionSet = new QuestionSet questionSet.setUser(userAccount) questionSet.setSetName(set) questionSet.setCreatedDate(new java.sql.Date(new java.util.Date().getTime)) questionSetService.addQuestionSet(questionSet) var list2: List[Question] = questionService.findAllQuestion var limit=list2.size var qustn:Question=null var a = 1; for( a <- 1 to limit ){ println( a ); qustn= questionService.findQuestionById(a) questionSetQuestion.setQuestion(qustn) questionSetQuestion.setQuestionSet(questionSet) questionSetQuestion.setCreatedDate(new java.sql.Date(new java.util.Date().getTime)) questionSetQuestionService.addQuestionSetQuestion(questionSetQuestion) } "redirect:/teacher/Assessment.html" }
解决方法
我觉得你几乎拥有它.使用复选框,您只能使用表单发回一条信息…即值.因此,如果您在用户单击提交按钮时尝试确定选中了哪些复选框,那么我会让复选框全部使用一个名称…如“id”(与您的完全一样).值是问题的实际ID(再次像您一样).提交后,“id”将是一个String数组,其中包含已检查的复选框的所有值.
因此,您的控制器方法需要将名为“ids”的参数映射到参数“id”,这是一个字符串[].现在,对于每个id,您可以调用questionService.findQuestionById.
(我不是一个Groovy大师所以没有代码示例sry
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。