【发布时间】:2023-03-10 20:06:01
【问题描述】:
我有一个带有复选框的视图
@for((jc)<-jobcategoryList) {
<input type="checkbox" name="jobcategory.id" value="@jc.id">@jc.name<br>
}
我只想将此选中复选框列表发送到我的控制器。但是这样做
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
}}
}
其中 Jobads 和 Jobcategory 是我的模型。
我的 Jabads.java 模型
public class Jobads extends Model {
@ManyToMany
private List<Jobcategories> jobcategories;
}
我的问题是,每当我提交带有复选框的视图表单时(如上所示)。我的控制台打印长度为:0
当我试图改变我的观点时
@for((jc,index)<-jobcategoryList.zipWithIndex) {
<input type="checkbox" name="jobcategory[index]" value="@jc">@jc.name<br>
}
并向控制器提交我的表单,在控制器的第一行生成 [[NumberFormatException: For input string: "index"]]。
如何将此复选框发送到我的控制器。
谢谢
【问题讨论】:
标签: java list model-view-controller checkbox playframework