inputText空检查

时间:2012-12-24 17:30:33

标签: javascript jsf

我正在使用JSF,我有一个h:inputText文本框,

<h:form>
                    Please enter your username:
                    <h:inputText value="#{user.id}"/><br/><br/>

我希望用户按下提交按钮

<h:commandButton value="Submit" action="upload/uploadText"/>

检查输入文本框中是否输入了一个值,长度超过6个字符

我该怎么做?

我试过的代码:

<script type="text/javascript"> 

        function required(){  
            if (document.getElementById("Username").value.length == 0)  
            {   
                alert("message");        
                return false;   
            }       
            return true;   
        }

    </script> 

用这个:

<h:body>

                <h:form onsubmit="return required();">
                    Please enter your username:
                    <h:inputText id="Username" value="#{user.id}">
                    </h:inputText><br></br><br></br>

                    To print a piece of text, please press the submit button below to upload the text:<br/><br/>
                    <h:commandButton type="submit" value="Submit" action="upload/uploadText"/>
                </h:form>

            </h:body>

我仍然无法让脚本运行

2 个答案:

答案 0 :(得分:3)

由于您使用的是JSF,因此应尽可能坚持使用JSF验证。

<h:inputText id="Username" value="#{UserBean.userName}">
  <f:validateLength minimum="6" maximum="15"/>
</h:inputText>

一些链接

http://viralpatel.net/blogs/javaserver-faces-jsf-validation-tutorial-error-handling-jsf-validator/

http://www.mkyong.com/jsf2/customize-validation-error-message-in-jsf-2-0/

答案 1 :(得分:2)

您需要在代码中将=<更改为<=

我不了解JSF语法,但您可以尝试更改这三个方面:

<h:inputText name="myTextField" id="myTextField" /><br/><br/>

<h:form onsubmit="return required();">

function required(){  
     if (document.getElementById("myTextField").value.length <= 6)  
      {   
         alert("message");        
         return false;   
      }       
      return true;   
}

如果您只需要验证一个字段。