<s:textfield label="用户名" name="user.userName" />
<sx:datetimepicker label="生日" name="user.birthday" displayFormat="yyyy-MM-dd" />现在的错误提示都是显示在textfield上面的,我想让它显示在textfield后面,要如何实现啊?
还一个问题,就是在使用datetimepicker时,如何能在文本框后面显示(格式为:年-月-日)这一句话啊?
就是像【生日:<input type="text" />(格式为:年-月-日)】这种形式,谢谢大家的帮助撒~

解决方案 »

  1.   

    1.要想让他显示再你想要的位置,将theme="simple",然后在每个表单后面写<s:fielderror><s:param>fieldname</s:param></fielderror>
    2.你既然用了datetimepicker,为什么还要显示那个东西呢?用户自己选择就好了,即使他输错误的也没关系,你可以试试
      

  2.   

    才想起来补充下问题……
    我用的是validate验证,如果添加fielderror的话,不是得在action中定义错误信息么?还可以使用validate么?
    还有就是如果使用了theme="simple",但在struts2.1.2中datetimepicker和form不是在一个标签库里啊……该怎么办呢?
    不好意思啊,麻烦了,偶素小菜,刚接触
      

  3.   

    首先建议不要用datetimepicker,因为它实在它大了(具体多大不太清楚,据说有1M+噢),加载很慢。
    另外你用框架验证还需要添加什么信息么?框架里面写就好了,如果是action里面的错误信息,addActionError("errorMsg");就可以了
    然后再页面首端加个<s:actionerror/>就可以显示actionerror的信息了。
    fielderror是校验框架产生的错误,也就是用户输入不合规范,actionerror是你执行action时候的错误,不要将两个混起来使用吧
      

  4.   

    哦……那,还是不用datetimepicker了。
    我好像有点蒙了……
    那个。fielderror的错误不是得在action中用addFieldError来定义么?
    那validation.xml这个框架文件还有用么?
    以下是用户名的判断
    <field name="user.userName">
    <field-validator type="required" short-circuit="true">
    <message>用户名不能为空</message>
    </field-validator>
    <field-validator type="stringlength">
    <param name="minLength">4</param>
    <param name="maxLength">20</param>
    <message>用户名长度应在${minLength}到${maxLength}个字符间</message>
    </field-validator>
    </field>
    jsp页改成:
    <s:form action="register" validate="true" theme="simple">
    <s:textfield label="用户名" name="user.userName" /><s:fielderror><s:param name="user.userName">user.userName</s:param></s:fielderror>
    可是validate不起作用了……
      

  5.   

    框架校验可以写Actionname-validation.xml,也可以在action中重载validate来实现,其实两个效果一样,你写了xml文件,它的拦截器会检测到,然后就调用的,记住是Actionname-validation.xml,而且是于action在同一个包中
      

  6.   

    可是,我是按照你说的去试的啊,可是不拦截
    action为:RegisterAction.java
    xml为:RegisterAction-validation.xml
    并且配置了userBean的验证框架
      

  7.   

    <s:fielderror>
        <s:param>user.userName</s:param>
    </s:fielderror>