AngularJs表单验证+仿某Q注册界面

有哪些常见的验证表单方式(即时输入验证,失去焦点验证等),他们各自的优缺点是什么? 这里是修真院前端小课堂,每篇分享文从 八个方面深度解析前端知识/技能,本篇分享的是: 【有哪些常见的验证表单方式(即时输入验证,失去焦点验证等),他们各自的优缺点是什么?】 标题 【修真院web小课堂】有哪些常见的验证表单方式(即时输入验证,失去焦点验证等),他们各自的优缺点是什么? 开场语 大家好,我是IT修真院北京分院第33期的学员刘仁瑞,一枚正直纯洁善良的文斌程序员,今天给大家分享一下,修真... 阅读详情

近两天自学了一下AngularJS ,今天写了一个表单验证,然后觉得太单调,就去网上看了比较好看的注册网,最后决定模仿了一下某Q的界面。

下面贴出代码:
图片显示区,用了一款jquery的插件,图片轮播方式为淡入

<!DOCTYPE html>
<html>
<head>
	<meta charset=utf-8>
    <meta name=description content="">
    <meta name=viewport content="width=device-width, initial-scale=1">
   
    <script  src="js/jquery-1.10.2.js"></script>
    <script  src="js/jquery.orbit-1.3.0.js"></script>
    
   
    <link rel="stylesheet" type="text/css" href="css/orbit-1.3.0.css">

    <title></title>
    <script type="text/javascript">
            $(function () {
                $('#featured').orbit({
                	animation: 'fade',
                });
            });
        </script>
</head>
<body>
<div class="container">
                  <div id="featured">
                      <img src="img/no1.jpg" data-caption="#htmlCaption1"  />
                      <img src="img/no2.jpg" data-caption="#htmlCaption2" />
                      <img src="img/no3.jpg" data-caption="#htmlCaption3" />
                  </div>

                  <!-- Captions for Orbit -->
                  <span class="orbit-caption" id="htmlCaption1"><strong>1</strong></span>
                  <span class="orbit-caption" id="htmlCaption2"><strong>2</strong></span>
                  <span class="orbit-caption" id="htmlCaption3"><strong>3</strong></span>
              </div>
</body>
</html>

表单区

用的AngularJS 验证

<!DOCTYPE html>
<html ng-app="">
  <head>
    <meta charset=utf-8>
    <meta name=description content="">
    <meta name=viewport content="width=device-width, initial-scale=1">
   
    <script  src="js/angular.min.js" ></script>
    <script  src="js/jquery-1.10.2.js"></script>
    <script  src="js/jquery.orbit-1.3.0.js"></script>
    <link rel="stylesheet" type="text/css" href="css/bootstrap-responsive.min.css">
    <link rel="stylesheet" type="text/css" href="css/register.css">
    <link rel="stylesheet" type="text/css" href="css/orbit-1.3.0.css">
    <link rel="stylesheet" type="text/css" href="css/bootstrap.css">
    <title></title>
     
     
  </head>
  <body >
    
        <div class="top">
        <a href="#" style="background: #005FEB;border-radius:25px;color: #FFFFFF;padding-right: 15px;"><span class="xx">xx</span>靓号</a> 
        <a href="#">邮箱账号</a> 
        <a href="#">简体中文</a> 
        <a href="#">意见反馈</a> 
        </div>
        
        <div class="fonttitle">
            <p class="welcome">欢迎注册xx</p>
             <p class="day" style="margin-top: 40px;">每一天,不悠闲 <span class="dayVip"><a href="#">免费靓号</a</span></p> 
        </div>
        
 
    <div class="posimg">
         <div class="imgss">
            <img src="img/logo.png" alt="">
        </div>
    </div>
   
  <div class="formtitle">
      <form class="form-horizontal" novalidate name="login">
    <fieldset>
     
    
    <div class="control-group">

          <!-- Text input-->
          
          <div class="controls">
            <input type="text" name="username" placeholder="用户名" class="input-xlarge" id="username" ng-model="user"  required ng-focus>
              <span ng-show="login.username.$error.required" style="color: red ">*</span>
              <span ng-show="login.username.$dirty && myFrom.myadrees.$invalid"></span>
          
          </div>
        </div>

    <div class="control-group">

          <!-- Text input-->
         <div class="controls">
            <input type="password" name="password" placeholder="密码"  class="input-xlarge" id="password" maxlength="15" minlength="5" ng-model="pwd"  required ng-focus>
             <span ng-show="login.password.$dirty && myFrom.myadrees.$invalid"></span>
             <span ng-show="login.password.$error.required" style="color: red ">*</span>
            <span ng-show="login.password.$error.minlength<8|| maxlength>16" style="color: red;font-size: 12px;  ">长度为8-16个字符</span><br>
          </div>
        </div>


        <div class="control-group" id="tel">
          <!-- Select Basic -->
          <div class="controls" >
               <select class="input-xlarge" >
                
                  <option >+86</option>
                 <option>台湾+886</option>
              </select>
                <input type="text" placeholder="电话号码" class="input-xlarge" id="tel" name="tel" ng-pattern="/^1[3|4|5|7|8]\d{9}$/" ng-model="ut" required>
             <span ng-show="login.tel.$dirty && myFrom.myadrees.$invalid"></span>
             <span ng-show="login.tel.$error.required" style="color: red">*</span>
             <span ng-show="login.tel.$error.pattern" style="color: red;font-size: 12px; ">手机格式不正确</span>
              <p class="help-block"  style="color: #aaa;line-height: 30px;">可通过该手机号找回密码</p>
          </div>
              
        </div>

        <div class="control-group">
         
          <!-- Button -->
          <div class="controls">
            <button class="btn btn-primary" ng-disabled="login.$invalid" id="buttonstyle">立即注册</button>
          </div>
        </div>

        <div class="control-group">
          <div class="controls">

            <!-- Multiple Checkboxes -->
            <label class="checkbox" >
              <input type="checkbox"      style="margin-top: 8px;" name="check" ng-model="checks" required>
              <span style="color: #aaa;line-height: 30px;">同时开通xx空间</span>
              
    
             
            </label>
            <label class="checkbox">
              <input type="checkbox"    style="margin-top: 8px;" name="check" ng-model="checkt" required>
              <span style="color: #aaa;line-height: 30px;">我已阅读并同意相关服务条款和隐私政策</span> 
                  
            </label>

    

     </fieldset>
    </form>
  </div>
    
    
  
  
   
</body>
</html>
index 将两个文件合并


<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
	<frameset cols="40%,60%"  frameborder="0"  allowtransparency="ture">
  		<frame src="img.html" scrolling="no"/>
  		<frame src="login.html" scrolling-x="no" />
	</frameset>
<body>
	
</body>
</html>



要源代码和组件包的话可关注我的微博  如果文件分享日期生效 、找不到分享链接, 对Java 有共同兴趣的都可以随时私信我

AngularJs demo 例子(表单验证) form 漂亮大气的bootstrap表单,angularJs表单验证 ,是angularJs入门很好的例子 立即下载

相关推荐

AngularJs 后台登录界面

运用AngularJs 技术 开发后台登录界面

angularjs之login登录页面

登录页面逻辑 判断用户,用户名和密码是否正确 正确进行登录操作,错误提示信息 正确获取用户信息并保存在本地缓存 登录后跳转页面 代码部分 html页面 class="sign_div" contorller="loginCtrl"> class="form-group"> 账号: class="input-icon"> type="text" c

沐吾 1万+

vue项目基于WebRTC实现一对一音视频通话

vue项目基于WebRTC实现一对一音视频通话。完整代码gitee地址: https://gitee.com/wade-nian/wdn-webrtc.git。

qq_920189602的博客 6648

用AngularJS做登录和注册成功后的页面跳转并传参数

当应用需要在内部进行跳转时是使用 $location 服务的最佳场景,比如当用户注册后、修改 或者登录后进行的跳转。用 $location , var RegistMall = angular.module("YunAD",["ngResource"],["ngRoute"]); //定义路由     RegistMall.config(['$routeProvider', funct

Saikonoyume的博客 7999

iphone查看/private/var/mobile/Containers/Data/Application/文件

xcode查看iPhone的private/var/文件夹xcode连接iPhone真机选择app下载Containers文件夹到mac电脑中查看手机中下载的文件 使用xcode真机调试的时候,文件目录都是这种/private/var/mobile/Containers/Data/Application/FAEFDF4D-5CE4-474F-9C53-C19789DB59F6/tmp/ xcode连接iPhone真机 不需要越狱,使用xcode上连接iPhone,然后选择运行的app,选择window-&g

小手琴师的博客 101万+

最新测算源码PHP算命源码-风水八字-八字起名-塔罗牌占卜

未来,随着技术的发展和用户需求的变化,我们可以继续对系统进行升级和优化,以满足更多用户的需求和期望。数据库设计:创建一个名为bazi的数据库表,包含以下字段:id(自增ID)、name(姓名)、sex(性别)、birth_date(出生日期)、birth_time(出生时间)、bazi(八字结果)。数据库设计:创建一个包含塔罗牌信息的数据库表,如tarot_cards,包含字段:id(塔罗牌ID)、name(塔罗牌名称)、meaning(塔罗牌含义)等。根据操作系统的不同,PHP的安装方法会有所不同。

shanbeizi的博客 2418

【前端】Angular制作注册页面

index.html &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset="utf-8"&gt; &lt;link href="https://cdn.bootcss.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet"&amp

而我想……成为一个有趣的妞 2286

从零开始跑通3DGS教程:(四)修改(缩放、空间变换)colmap生成的sfm结果

通过colmap进行的sfm的普通方式会丢失场景的物理尺度信息,并且并不在符合一般认知的坐标系下,本文将读取colmap生成的点云和相机pose,将其进行空间变换和缩放之后,重新保存,新保存的结果仍然可以被colmap读取以及进行后续的稠密重建以及3dgs等工作

诺有缸的高飞鸟的博客 1424

为什么 angular-seed 是每个 AngularJS 开发者的必备脚手架?完整指南

angular-seed 是 AngularJS 官方提供的种子脚手架项目,一套开箱即用的应用骨架 + 开发测试工具链。无论你是 AngularJS 新手,还是要为团队建立标准化的项目起点,这份完整指南都会带你在几分钟内跑通它,并弄清每个目录和脚本的用途。 ## 什么是 angular-seed?(1 分钟快速了解) 一句话概括:**angular-seed 是典型的 AngularJS We

gitblog_00929的博客 473

端到端自动驾驶:特斯拉FSD Beta技术拆解

端到端自动驾驶:特斯拉FSD Beta技术拆解 ,人工智能,计算机视觉,大模型,AI,这篇文章围绕特斯拉FSD Beta的端到端自动驾驶技术展开,先介绍端到端自动驾驶的定义、与传统方案的区别及FSD Beta的特点,再阐述其硬件基础、技术架构,解析关键技术,还涉及训练数据与标注、安全与冗余设计、实际应用场景与挑战以及技术迭代与更新等内容,展现了该技术的多方面情况。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 18万+

模型实战(16)之StrongSort (OSNET)配合YOLOv5、v7、v8 实现多目标跟踪详解

StrongSort (OSNET)配合YOLOv5、v7、v8 实现多目标跟踪详解

yohnyang的博客 1770

如何使用grunt-angular-templates:5分钟上手AngularJS模板缓存技巧

grunt-angular-templates是一款强大的Grunt构建任务插件,它能够自动将AngularJS模板进行合并、压缩并预加载到`$templateCache`中,从而显著提升应用加载速度。通过消除模板的AJAX请求,这款工具让你的AngularJS应用性能得到质的飞跃。 ## 🚀 为什么需要模板缓存? 在传统的AngularJS应用中,使用`ng-include`或`templ

gitblog_00791的博客 455

基于 Vivado HLS 的 AC97 音频系统设计

介绍一种基于 FPGA 的 AC97 音频系统设计。系统的核心部件采用 Xilinx Atlys 的板载 Spartan6 XCSLX45 芯片,使用的工具为 Xilinx 的高层 次 综 合 技 术 Vivado HLS。首先使用 C /C + + 代码编写的算法描述系统的 FIR 滤波器; 然后按 照 Vivado HLS 编译工具的规范,将程序代码转换为 RTL 模型,快速、直接地生成对 应左右声道的 FIR IP 核和综合结果; 再结合互连的 MicroBlaze 处理器 IP 核,处理 一段立体声

qq_43416206的博客 327

angular-google-analytics源码解析:GA脚本注入与Tracker注册背后的实现原理

angular-google-analytics 源码解析,是读懂前端埋点方案的最佳切入点。这个开源项目专为 AngularJS 应用打造,目标只有一个:让 Google Analytics 接入变得"零配置、可编程"——开发者只需在 config 阶段调用 `setAccount()` 填一个跟踪 ID,剩下的脚本加载、Tracker 创建、页面上报全部自动完成。本文不贴大段代码,而是从整体架构

gitblog_00551的博客 872

【ARM Coresight | AMBA BUS | Cache 与 MMU/MPU | CoreLink | GCC | CSH 专栏导读】

1. ARM Coresight(SoC-400/SoC-600) 专栏 2. ARMv8/v9 CPU/Cache 专栏 3. Linux ARM AMBA 总线 专栏 4. Trace32/DS-5 专栏。。。

CodingCos的博客 8241

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

angularjs ajax拦截器,关于angularjs:使用拦截器处理200 HTTP响应上的错误

我有与外部API集成的服务。此API不一致,因此不太可能更改。API内有两种报告错误的方法,一种是使用HTTP 500代码的响应,另一种是常规的200 HTTP响应,但JSON中的status设置为"错误"。处理500错误工作正常,我刚刚使用responseError方法创建了拦截器(ngResource拦截器,而不是$ http一个),当API发出500响应时,它将向用户显示错误消息:.fact...

weixin_39864571的博客 570

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Reading Notes for AngularJS -- Chapter1

Chapter1.AngularJS ZenQ: AngularJS 是什么?A: AngularJS 是一个新兴的 JavaScript MVC 框架;Q: AngularJS 的适用条件?A: AngularJS 适用于具有大量CRUD操作的应用;Q: AugularJS 的优势?A: - AngularJS 不依赖任何框架,只依赖于 JavaScript 和 HTML; - Angular

LittleUniverse 614

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

angularjs $$phase

https://segmentfault.com/q/1010000000738004/a-1020000000738812 $$phase 是 angluar 内部使用的状态标志位,用于标识当前是否处于 digest 状态。 通常程序中不需要关心这个状态(两个 $ 打头更说明它是内部使用的),如果你写出了需要关心这个状态的代码,比如这个 safeApply,那一定是哪里出了问题。 $diges...

weixin_30735391的博客 90

AngularJS $q学习:轮询图表数据

http://wcp1231.logdown.com/posts/165232-angularjs-q-poll-chart-data 最近在做的项目中使用到了AngularJS,就做一个AngularJS的学习笔记。这次的内容是AngularJS的$q:提供了异步回调管理的服务。 起因 在项目中要做一个实时数据的图表展示,需要在页面上轮询请求后台数据并显示在图表中。

SalmonellaVaccine的专栏 2667

学习笔记angularjs的应用

angularjs没有main方法,angular使用模块的概念来代替main方法。模块充许我们通过声明的主式来描述应用中的依赖关系,以及如何进行组装和启动。使用这种方式的原因如下: 1。模块是声明式的。这就意味着它编写起来更加容易,同时理解 起来也很容易,阅读它就像读普通 的英文一样。 2。它是模块化的。这就迫使你去思考如何定义你的组件和依赖关系,让它们变得更加清晰。 3。它让测试更加容易

wyaspnet的专栏 380

有哪些常见的验证表单方式(即时输入验证,失去焦点验证等),他们各自的优缺点是什么?...

这里是修真院前端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析前端知识/技能,本篇分享的是: 【有哪些常见的验证表单方式(即时输入验证,失去焦点验证等),他们各自的优缺点是什么?】 标题【修真院web小课堂】有哪些常见的验证表单方式(即时输入验证...

weixin_34192732的博客 615

angularjs中的interceptor和挺好的例子

原文地址:http://www.webdeveasy.com/interceptors-in-angularjs-and-useful-examples/AngularJS 的 $http 服务允许我们通过发送 HTTP 请求方式与后台进行通信。在某些情况下,我们希望可以捕获所有的请求,并且在将其发送到服务端之前进行操作。还有一些情况是,我们希望捕获响应,并且在完成调用之前处理。一个很常用的场景就是

非著名coder的窝 592

AngularJS 指令实践

概述 如果你写过AngularJS的应用,那么你一定已经使用过指令,不管你有没有意识到。你肯定已经用过简单的指令,比如 ng-mode, ng-repeat, ng-show等。这些指令都赋予DOM元素特定的行为。例如,ng-repeat 重复特定的元素,ng-show 有条件地显示一个元素。如果你想让一个元素支持拖拽,你也需要创建一个指令来实现它。 指令基本思想:它通过对元素绑定事件监听或者...

weixin_30537391的博客 72

angularjs培训之重新理解双向绑定和事件详解

双向绑定是angularjs亮点之一,在前面的《angularjs培训之helloworld》篇中大概介绍了下双向绑定,现在我们“旧事重提”,先看下下面的代码片段: view中: <input type=’button’ ng-click=”set()” value=”set Value”> <input type=”text” ng-model=’userName2’> controlle

非著名coder的窝 1184

angularjs post返回html_利用基于AngularJS的XSS实现提权

大家好,我是Shawar Khan。自我上次写作以来已经时隔好几个月了,这段时间我一直忙于不同的测试目标。最近我在某个目标中发现了一个有趣的XSS漏洞,通过该漏洞我可以将我的权限提升为管理员用户。XSS是一个非常有趣的漏洞,在发现它之后,你可以直接与应用程序进行通信,而无需担心同源策略。一切都在我们的控制之中,大部分保护都被打破了。管理员用户拥有应用程序的最高权限可以对任意用户执行添加/...

weixin_34759094的博客 393

angularJS中的Promise对象($q)的深入理解

原文链接:a better way to learn AngularJS - promises AngularJS通过内置的$q服务提供Promise编程模式。通过将异步函数注册到promise对象,Promise编程模式提供一种链式调用异步函数的方式。 Promise模式作为ES6规范之一,取得JavaScript原生支持。AngularJS中$q服务提供的接口,非常近似这一新...

weixin_30411819的博客 115
上一篇: AngularsJS自定义指令
下一篇: bootstrap-switch开关组件
让程序飞
博客等级 码龄10年 8831粉丝 99原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

让程序飞

您的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值