播放框架具有相同名称属性的复选框字段的多个表单

时间:2016-01-21 07:27:51

标签: html forms playframework playframework-2.0

我有一个表单,里面可能有多个较小的表单。所有较小的表单都具有相同类型的字段。我在每个较小的表单中都有name= "timeOfTheDay"的两个复选框字段。一个复选框的值为"morning"。另一个具有值"evening"。现在,对于所有表单,名称"timeOfTheDay"是相同的,因此所有表单中只有一个值被选中。此字段的整体形式一次只能进行一次选择。

此外,我无法更改此字段的名称,因为在Play模型中,我对所有表单使用相同的模型,它使用名称进行映射。

请为此提出一些解决方案。

我的主要模特:

public class Details {
    //Default For all customers
    public String timeOfTheDay;

    public Integer cost;

    public String day;

    //Customized details for each customers
    public CustomForm customDetails[];
}

CustomForm是:

public class CustomForm {
    public String timeOfTheDay;

    public Integer cost;
}

defaultForm模板:

//these are the params i am sending while rendering the file from controllers
@(id: Long, detailsForm : Form[models.Settings.Details], isEdit: Boolean)

<div class="col-md-2 text-left min-size-label removePadding">
  <span>Day</span>
</div>

<div class="col-md-10 removePaddingLeft">
  @input(detailsForm("day"), 'class -> "form-control col-xs-12 formField ")
</div>

<div class="col-md-2 text-left min-size-label removePadding">
  <span>Cost</span>
</div>

<div class="col-md-10 removePaddingLeft">
  @input(detailsForm("cost"), 'class -> "form-control col-xs-12 formField ")
</div>                  

<div class="col-md-10 text-left min-size-label removePadding">
  <span><b>Time of the day</b></span>
</div>

<div class="col-sm-12">
  @inputRadioGroup(
    detailsForm("timeOfTheDay"),
    options(enums.timeOfDayEnum.timeOfDayMap()),
    'name -> "timeOfTheDay",
    'class -> "timeOfTheDay"
  )
</div>

CustomForm模板:

@(id: Long, customDetailsForm : Form[models.Settings.CustomForm], isEdit: Boolean)

<div class="col-md-2 text-left min-size-label removePadding">
  <span>Cost</span>
</div>

<div class="col-md-10 removePaddingLeft">
  @input(customDetailsForm("cost"), 'class -> "form-control col-xs-12 formField ")
</div>

<div class="col-md-10 text-left min-size-label removePadding">
  <span><b>Time of the day</b></span>
</div>

//options are fetched from enums
<div class="col-sm-12">
  @inputRadioGroup(
    customDetailsForm("timeOfTheDay"),
    options(enums.timeOfDayEnum.timeOfDayMap()),
    'name -> "timeOfTheDay",
    'class -> "timeOfTheDay"
  )
</div>

两个表单都具有相同的timeOfTheDay命名单选按钮字段。此外,我可以在一个页面中有许多customForm。然后它们显然与使用相同模型的名称相同。那么我如何单独选择每个表格。

0 个答案:

没有答案