【问题标题】:Struts 2 Fields Validation with dynamic forms使用动态表单进行 Struts 2 字段验证
【发布时间】:2014-10-05 20:10:11
【问题描述】:

我有 Struts 2 应用程序。

我有一个如下所示的 jsp 文件

<s:form method="post" action="%{#attr.actionType}">

    <c:forEach items="${nvpList2}" var="item">
        <s:textfield label="%{#attr.item.displayName}" 
                     value="%{#attr.item.value}" 
                      name="%{#attr.item.getName()}" 
                        id="%{#attr.item.getName()}"/>
    </c:forEach>

    <s:submit type="button"   cssClass="btn btn-primary" 
               key="button.save" theme="simple" >
        <i class="icon-ok icon-white"></i>
    </s:submit>

</s:form>

可以看出,从动作名到字段名的所有元素都是动态创建的

当我对字段进行验证检查时出现问题。 在验证检查时,会显示错误,但页面中不会出现任何文本字段。

我该如何解决这个问题。

【问题讨论】:

  • 返回输入结果时会显示错误,因此在结果侦听器可以重新填充列表之前。

标签: jsp validation struts2 struts-tags repopulation


【解决方案1】:

阅读what happens when a validation or conversion error occours的详细工作流程;

一旦你知道发生了什么,请阅读How do we repopulate controls when validation failsprepare()方法和其他方式);

然后,看看你需要为send Lists or Maps from JSP to Action构建哪种符号(和结构,在复杂的情况下),无论是静态的(JSP 或 HTML)还是动态的(JSP or Javascript);

最后,我不确定你为什么使用 JSTL 而不是a Struts Iterator,我也不知道你要发送数据的数据结构,但注意需要在名称中放置索引(@987654327 @)。

【讨论】:

    猜你喜欢
    • 2016-08-21
    • 1970-01-01
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    相关资源
    最近更新 更多