如何在表单提交中验证模式

时间:2013-07-17 04:20:44

标签: html5

在给出edittext字段中的输入时,如果有人将IP地址的IP地址格式放入IP地址应该是这样的000.000.0.000 plz帮助我显示错误

在HTML5中: -

<div data-role="content">
     <form id="form">
         <div data-role="fieldcontain">
                    <label for="ip">IP Address/System Name</label>
                    <input name="ip" id="ip" type="text" pattern="((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$">                       
         </div>
         <div style="text-align:center;">                   
                    <div data-role="button" data-theme="b" data-inline="true" id="button1">Update</div>
         </div> 
</div>

3 个答案:

答案 0 :(得分:11)

要使HTML5验证能够处理提交,您必须在required字段中添加input属性,并且要使用HTML5进行验证,并且必须提交表单。

您可以处理通过javascript提交的表单数据,如果您想要手动处理提交的数据,那么您必须在data-ajax="false"标记中指定form

对于您的代码,请尝试此

<div data-role="content">
 <form id="form" data-ajax="false">
     <div data-role="fieldcontain">
                <label for="ip">IP Address/System Name</label>
                <input name="ip" id="ip" type="text" required pattern="((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$">                       
     </div>
     <div style="text-align:center;">                   
                <input type="submit" value="Submit button" />
     </div> 
 </form>
</div>

在javascript中,您可以执行类似

的操作
$("#form").submit(function(e){
    e.preventDefault();
    //call your method

});

答案 1 :(得分:3)

您可以使用的一条路线使用mask.js - 在您的情况下,您可以让它强制用户以正确的格式输入数据,预填充'。' IP中的字符,并阻止用户输入非数字值。

Mask.js

这是一个小提琴 - http://jsfiddle.net/QF9Lz/2/

在文本框中单击,您将看到一个格式化掩码,您只能以您指定的格式输入数值。

因此,一旦在头部包含了mask.js,就可以像这样初始化输入掩码:

$(document).ready( function() {
    $('#ip').mask('999.999.9.999');
});

答案 2 :(得分:-1)

我为地址/掩码制作了这个正则表达式 例如:10.0.0.0/8

((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){3}\/([1-2][0-9]|[0-9]|3[0-2])$

如果您只想使用地址的正则表达式:

((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){3}$