Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms Spring中指向单个路径的多个表单元素_Forms_Spring - Fatal编程技术网

Forms Spring中指向单个路径的多个表单元素

Forms Spring中指向单个路径的多个表单元素,forms,spring,Forms,Spring,我做了一些搜索,似乎没有人问过这个具体问题(如果我错了,我道歉) 我正在处理的应用程序处理一组数据的报告,这些报告按客户机和报告类别分开 我遇到的问题是,每个作业的客户机数量和类别各不相同,因此我需要根据每个作业的需求动态生成以下表单元素 <!-- CLIENT NAME --> Inclusion Client Name: <form:errors path="clientName" cssClass="error"/><br /> <

我做了一些搜索,似乎没有人问过这个具体问题(如果我错了,我道歉)

我正在处理的应用程序处理一组数据的报告,这些报告按客户机和报告类别分开

我遇到的问题是,每个作业的客户机数量和类别各不相同,因此我需要根据每个作业的需求动态生成以下表单元素

<!-- CLIENT NAME -->
Inclusion Client Name:
    <form:errors path="clientName"  cssClass="error"/><br />
    <form:input path="clientName" />       
<br /><br />

<!-- REPORTING CCATEGORIES -->
Reporting Categories:
    <form:errors path="reportingCategories"  cssClass="error"/><br />
    <form:input path="reportingCategories" />       
<br /><br />
<!-- comma separated list of categories -->

包含客户端名称:



报告类别:


在测试一些理论的过程中,我了解到可以将多个表单元素指向同一路径,Spring会将这些值连接到逗号分隔的列表中。我唯一关心的是这些表单元素的读取顺序

<!-- CLIENT NAME A -->
Inclusion Client Name:
    <form:errors path="clientName"  cssClass="error"/><br />
    <form:input path="clientName" />       
<br /><br />

<!-- REPORTING CATEGORIES A -->
Reporting Categories:
    <form:errors path="reportingCategories"  cssClass="error"/><br />
    <form:input path="reportingCategories" />       
<br /><br />
<!-- comma separated list of categories -->

<!-- CLIENT NAME B -->
Inclusion Client Name:
    <form:errors path="clientName"  cssClass="error"/><br />
    <form:input path="clientName" />       
<br /><br />

<!-- REPORTING CATEGORIES B -->
Reporting Categories:
    <form:errors path="reportingCategories"  cssClass="error"/><br />
    <form:input path="reportingCategories" />       
<br /><br />
<!-- comma separated list of categories -->

包含客户端名称:



报告类别:


包含客户端名称:


报告类别:



在上面的第二个代码片段中,我的测试用例在客户机名称B之前读取客户机名称A(基本上是从上到下工作)。是否始终如此?

是的,顺序始终是表单字段在表单中定义的顺序

定义具有相同路径的多个字段时,还可以在请求方法中将它们绑定为数组,如:

@Controller
public class YourController {
    @RequestMapping(....)
    public String foo(@RequestParam String clientName[], @RequestParam String reportingCategories[], BindingResult result) {
        ...
    }
}