2

我创建了一个 struts2 登录页面,其中包含登录所需的所有基本组件。我正在使用 struts2 文本标签作为标签。下面是我的登录页面代码片段。

  <body>
        <h2>Demo - Login</h2>
        <s:actionerror />
        <s:form action="login.action" method="post">
            <s:textfield name="username" key="label_username" size="20" />
            <s:password name="password" key="label_password" size="20" />
            <s:submit name="signIn" key="label_login" align="center" />
            <s:text name="name_msg"/>
            <s:submit name="signUp" key="label_signUp"></s:submit>
        </s:form>
    </body>

我总是看到标题后显示文本(New to Demo?),如下图所示。从 MessageBundle 中读取文本。尽管引用了资源包,但我尝试给出一些直接的文本值,即使结果相同。我错在哪里。

在此处输入图像描述

4

1 回答 1

3

<s:text>标签显示没有“装饰”的文本。

默认的“xhtml”主题的表单标签会发出表格标记。

这意味着您当前正在生成无效的 HTML,因此文本将根据浏览器处理表格行之间显示的内容的方式显示在基本上任意的位置。

查看源代码会立即回答这个问题。

您需要将文本放入表格行中,就像表单标签中的其他所有内容一样,或者使用“简单”主题并自己完成所有布局、错误消息等。

于 2012-11-21T19:24:48.850 回答