vue批量驗證提交表單的數據是否合規

来源:https://www.cnblogs.com/cengjingdeshuige/archive/2018/12/27/10185693.html
-Advertisement-
Play Games

vue批量判定數據是否合規 主要用於數據的提交,批量判定是否有數據是否和規則 姓名: 年齡: ... ...


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>vue批量判定數據是否合規</title>
</head>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

<body>
    <div id="app">
        <p>主要用於數據的提交,批量判定是否有數據是否和規則</p>
        <ul>
            <li>
                姓名:
                <input type="text" v-model="name">
            </li>
            <li>
                年齡:
                <input type="number" v-model="age">
            </li>
            <li>
                體重:
                <input type="number" v-model="weight">
            </li>
            <li>
                手機:
                <input type="phone" v-model="phone">
            </li>
            <li>
                郵箱:
                <input type="email" v-model="email">
            </li>
            <li>
                地址:
                <input type="text" v-model="address">
            </li>
        </ul>
        <button @click="btn()">點擊測試數據是否正確</button>
    </div>
    <script>
        var app = new Vue({
            el: '#app',
            data: {
                name: '',
                age: '',
                weight: '',
                phone: '',
                email: '',
                address: ''
            },
            methods: {
                // 判定是否合規
                have_empty: function (arr) {
                    for (let key in arr) {
                        console.log(arr[key].inspect)
                        if (arr[key].inspect) { // 有值並且有規則執行驗證
                            if(arr[key].reg){
                                let reg = new RegExp(arr[key].reg)
                                var red_end = reg.test(arr[key].inspect)
                                if( !red_end ){
                                    alert('請輸入正確的' + arr[key].msg)
                                    return false
                                }
                            }
                        }else{ // 沒值返回 fasle
                            alert('請輸入' + arr[key].msg)
                            return false
                        }
                    }
                    return true

                },
                // 判定規則前傳入參數
                inspect: function () {
                    var end = this.have_empty([
                        {
                            inspect: this.name, // 待檢測的欄位
                            msg: '姓名', // 空值返回的提示
                        },
                        {
                            inspect: this.age,
                            msg: '年齡'
                        },
                        {
                            inspect: this.weight,
                            msg: '體重'
                        },
                        {
                            inspect: this.phone,
                            msg: '手機號',
                            reg: '^[1][3,4,5,7,8][0-9]{9}$'
                        },
                        {
                            inspect: this.email,
                            msg: '郵箱',
                            reg: '^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$'
                        },
                        {
                            inspect: this.address,
                            msg: '地址'
                        }
                    ])
                    console.log(end)
                    if (!end) return // 判定驗證結果
                    console.log('執行提交的ajax函數')

                },
                btn: function () {
                    this.inspect()
                }

            },
            mounted () {

            },

        })
    </script>
</body>

</html>

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • jQuery是什麼? jQuery是一款優秀的JavaScript庫,從命名可以看出jQuery最主要的用途就是用來做查詢(jQuery=js+Query),正如jQuery官方Logo副標題所說(write less,do more)使用jQuery能讓我們對HTML文檔遍歷和操作、事件處理、動畫 ...
  • Node.js 10已經進入LTS時代!其應用場景已經從腳手架、輔助前端開發(如SSR、PWA等)擴展到API中間層、代理層及專業的後端開發。Node.js在企業Web開發領域也日漸成熟,無論是在API中間層,還是在微服務中都得到了非常好的落地。本書將通過Web開發框架Koa2,引領你進入Node.... ...
  • 測試Mantis rest api時碰到的問題:404 Not Found. 根據文件,Mantis rest api的預設url是{{url}}/api/rest/{{controller}}。 其中{{url}}的部分是Mantis實體的base url,{{controller}}則是各api ...
  • 1、HTML代碼,如下圖: 2、jQuery代碼,如下圖: ...
  • 本文由雲+社區發表 目的 寫了幾個Flutter的demo,但是對Flutter的自定義view和動畫都不太瞭解,看到一個類似效果在android的實現,就嘗試用Flutter做一下。同時也是學習Flutter的自定義view和動畫相關的知識。 效果 效果動圖 在藍色區域點擊,會產品水波紋動畫。 宛 ...
  • 前言 本例基於react,但是實際上就是用原生js做的。相容性做到了IE9,但是按照這個思路做是可以做到IE8甚至更低的。 需求與最初的思路 當我拿到這個需求的時候以為很簡單,就是可以給頁面上的文章做記號,比如添加個下劃線,或者背景塗色做成熒光筆的樣子。 因為只需要相容IE9,所以window.ge ...
  • // 將一個JSON數組[{},{},{}]按一定規則合併到另一個JSON數組[{},{},{}] // Object.assign方法的第一個參數是目標對象,後面的參數都是源對象。 var list1 = [{id:2,name:'aa'},{id:4,name:'bb'},{id:1,name: ...
  • 最近,因為公司的一個新項目,用了一個基於bootstrap二次改造的國外友人的框架。感覺很一般吧,要求更換框架,客戶拒絕。只能搞這個,發現裡面一個jQuery插件-【Nestable】但是源作者長時間不更新,後來發現了一個新版本,應該是另外一個人基於Nestable改造的,稱之為“Nestable2 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...