0

我需要编写一个 javascript 或 jquery 函数来类似于 html5 中所需的验证来显示验证气泡消息,但我不想使用所需的标签,因为我在按钮上使用自定义验证器

有什么建议么?

请注意,我是带有 vb 的 asp.net

 <p> 
      <label for="username" class="uname" data-icon="u" > Your username </label>
                                <asp:Textbox runat="server" id="username" name="username" type="text" placeholder="myusername"/>
</p>
<p> 
   <label for="password" class="youpasswd" data-icon="p"> Your password </label>
     <asp:Textbox runat="server" id="password" name="password" type="password" placeholder="eg. X8df!90EO" /> 
</p>
4

2 回答 2

0
<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.min.js"
        type="text/javascript"></script>
        <script type="text/javascript">
            function validate(form) {
                var valid = true;
                $(form).children().filter('input[validate=required]').each(
                        function() {
                            if (this.value == '') {                                
                                alert("A value for " + this.getAttribute('title') + " is required");
                                valid = false;
                            }
                        }
                );
                return valid;
            }
        </script>

    </head>    
    <body>
        <form onsubmit="return validate(this)">
            <asp:Textbox runat="server" 
                         id="username" 
                         name="username"                 
                         placeholder="myusername"
                         validate="required"
                         title="Username"/>
            <input type="submit"/>
        </form>
    </body>
</html>    

“验证”是一个组成的属性,你可以使用任何东西。

于 2013-09-20T10:32:38.243 回答
0

我建议使用http://jqueryvalidation.org/

特别看看http://jqueryvalidation.org/documentation/给出的例子

这不会为您提供开箱即用的漂亮“气泡”,而是在输入字段下方显示清晰的错误消息,并且可能对您有用 - 或者至少是一个很好的起点。该演示表明,这显然不会干扰浏览器现有的 html5 功能。此外,作者解释了为什么他认为自己实现这种验证并不是一个好主意,尽管其他答案中显示的实现可能非常适合您。

由于我不熟悉 ASP,我不知道在这种情况下它是否负责“自动”服务器端验证(也许不是)。因此,如果用户设法使用空字段提交表单(不难,可能使用 GET URL,或在提交之前操作页面),您的服务器端代码应该能够处理它,例如,重定向用户再次访问表单,理想情况下还会显示适当的错误消息。

于 2013-09-20T10:36:29.947 回答