1. 程式人生 > >html5 原生表單驗證+ajax 提交

html5 原生表單驗證+ajax 提交

html5 原生表單驗證 + ajax 提交 無需任何第三方驗證框架 通過pattern 和 oninvalid 屬性統一驗證表單 。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <form action="#" method="post" onsubmit="return false">
            <input
type="text" name="mobile" id="mobile" placeholder="請輸入手機號碼" pattern="^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$" oninvalid="validateIt(this,'手機號碼格式錯誤')" oninput="validateIt(this,'手機號碼格式錯誤')" required/>
<input type="text" name="age" id="address" placeholder="請輸入地址" pattern
="^.{5,200}$" oninvalid="validateIt(this,'地址不符合規範')" oninput="validateIt(this,'地址不符合規範')" required/>
<button type="submit" id="submit" >提交</button> </form> </body> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script
>
function validateIt(inputelement,errMsg){ if(inputelement.validity.patternMismatch){ inputelement.setCustomValidity(errMsg); }else{ inputelement.setCustomValidity(''); //輸入內容符合驗證條件 } return true; } $(function() { if ($("*:invalid") == 0) { // 如果驗證都通過 $("#submit").submit(function() { $.ajax({ type: "post", url: "你的地址", data: $("form").serialize(), async: true, success: function(data) { alert(data); }, dataType: "json" // json 格式的返回值 }); }); } }); </script>

效果圖這裡寫圖片描述