简体   繁体   English

在Play框架Java中将视图的复选框列表发送到控制器

[英]sending a list of checked boxes from view to controller in play framework java

I have a view with the checkboxes 我有复选框的视图

 @for((jc)<-jobcategoryList) {

           <input type="checkbox" name="jobcategory.id" value="@jc.id">@jc.name<br>
                                }

I just want to send this list of checked checkboxes to my controller.But on doing this 我只想将此选中的复选框列表发送到我的控制器。

public class JobAdController extends Controller {
    public static Result save() {


            Form<Jobads> jobadsFormData = jobadsForm.bindFromRequest();



            if (jobadsFormData.hasErrors()) {

          System.out.println("Error in form");
                 return badRequest();


            } else {

            Jobads jads= jobadsFormData.get();
            List<Jobcategories> jadsList= jads.getJobcategory();

            System.out.print("\nLength is:"+jadsList.size());// always prints Length is:0





          }}
}

where Jobads and Jobcategory are my models. Jobads和Jobcategory是我的模型。

My Jabads.java model 我的Jabads.java模型

public class Jobads extends Model {


    @ManyToMany

    private List<Jobcategories> jobcategories;
}

My problem is that whenever i submit my view form with the checkboxes(given above).My console prints Length is:0 我的问题是,每当我提交带有复选框的视图表单时(上面给出)。我的控制台打印的长度为:0

When i tried to change my view to 当我尝试将视图更改为

@for((jc,index)<-jobcategoryList.zipWithIndex) {

               <input type="checkbox" name="jobcategory[index]" value="@jc">@jc.name<br>
                                    }

and submit my form the controller an [[NumberFormatException: For input string: "index"]] is generated on the first line of controller. 并将我的表单提交给控制器,在控制器的第一行将生成[[NumberFormatException:对于输入字符串:“ index”]]。

How can I send this checked boxes to my controller. 我如何将此复选框发送到我的控制器。

Thanks 谢谢

Use: 采用:

@for(jc <- jobcategoryList) {
    <input type="checkbox" name="jobcategories[]" value="@jc.id">@jc.name<br>
}

or 要么

@for((jc,index) <- jobcategoryList.zipWithIndex) {
    <input type="checkbox" name="jobcategories[@index]" value="@jc.id">@jc.name<br>
}

and in your form class: 并在您的表单类中:

public List<Long> jobcategories;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在Play框架中将对象列表从视图传递到Controller - Passing a List of objects from view to Controller in play framework 将参数从视图传递到Play框架上的控制器 - Passing parameter from view to controller on Play Framework 从控制器传递List对象到视图时播放Framework编译错误 - Play Framework compilation error when passing List object from controller to view java播放! 框架:将带有数据表的参数视图传递给控制器​​将返回null - java Play! framework: passing parameter view with datatable to controller returns null 从控制器显示日期对象/值以在Play Framework / Scala中查看 - Display date object/value from controller to view in Play Framework/Scala 如何从Java控制器操纵Play Framework WS响应 - How to manipulate Play Framework WS response from java controller 当从视图中引用控制器中的Java类时,Play Framework编译错误“类型索引不是对象控制器的成员。应用程序” - Play Framework compile error “type Index is not a member of object controllers.Application” when referring to Java class in controller from view 将对象列表从视图发送到控制器:限制为 256 个对象 - Sending a list of objects from view to controller : limited to 256 objects 在Javascript中将字符串发送到Play Framework中的java方法 - Sending a String in Javascript to java method in Play Framework 使用Java在Play框架模板中发送会话 - Sending Session in play framework template with java
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM