如何从html页面到spring mvc controller获取复选框值

我使用 spring mvc框架与百里叶模板引擎
问题是,我有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

相关文章

HTML代码中要想改变字体颜色,常常需要使用CSS样式表。CSS是...
HTML代码如何让字体盖住图片呢?需要使用CSS的position属性及...
HTML代码字体设置 在HTML中,我们可以使用标签来设置网页中的...
在网页设计中,HTML代码的字体和字号选择是非常重要的一个环...
HTML(Hypertext Markup Language,超文本标记语言)是一种用...
外链是指在一个网页中添加一个指向其他网站的链接,用户可以...