用AngularJS來實現(xiàn)監(jiān)察表單按鈕的禁用效果
這篇博文主要是寫給新手的,是給那些剛剛開始接觸Angular,并且想了解數(shù)據(jù)綁定是如何工作的人。
這里主要是用到了$watch監(jiān)察數(shù)據(jù)的變化,并用正則判斷數(shù)據(jù)是否符合要求。
關(guān)鍵HTML代碼:
<div class="row row-form"> <div class="col col-form"> <div class="list"> <div class="row row-code"> <div class="col col-60 col-mobile"> <label class="item item-input mobile-btn"> <input type="text" placeholder="手機(jī)號" name="mobile_num" id="mobile_num" ng-model="mobileNum"> </label> </div> <div class="col col-40 col-code"> <input type="button" class="button button-block code-btn" id="get_num_btn" ng-click="getCode()" ng-value="info" ng-disabled="isDisabled"> </div> </div> <label class="item item-input"> <input type="text" placeholder="驗證碼" name="check_num" id="check_num" ng-model="codeNum"> </label> <button class="button button-block button-my-style" id="submit_btn" ng-click="submit()" ng-disabled="isSubmitted">提 交</button> </div> </div> </div>
關(guān)鍵CSS代碼:
.col-form{ padding: 5% 2%; margin-bottom: 10%; } .col-form .list label{ margin-bottom:0.2rem; border-radius: 0.5rem; } .col-form .list input{ font:normal 1rem fzltxhjw; } .item-my-style{ padding: 0.5rem; } .row-code{ padding-left: 0; padding-right: 0; } .button.code-btn{ margin:0; border-radius: 0.5rem; background-color: #ffba07; color: #51110a; } .col-mobile{ padding-left: 0; } .col-code{ padding-right: 0; }
這里主要是AngularJS的代碼部分:
var myApp=angular.module('myApp', ['ionic']); myApp.controller("FirstController",["$scope",function($scope){ //監(jiān)察手機(jī)號 $scope.isDisabled=true; $scope.mobileNum=""; $scope.mobileVal=function(){ return $scope.mobileNum; }; $scope.$watch($scope.mobileVal,function(newValue,oldValue){ var regex = /^(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9])\d{8}$/; if(regex.test(newValue)){ $scope.isDisabled=false; }else{ $scope.isDisabled=true; } }); //監(jiān)察驗證碼 $scope.isSubmitted=true; $scope.codeNum=""; $scope.codeVal=function(){ return $scope.codeNum; }; $scope.$watch($scope.codeVal,function(newValue,oldValue){ if(newValue.length==4){ $scope.isSubmitted=false; }else{ $scope.isSubmitted=true; } }); }]);
顯示效果:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Angular 的 Change Detection機(jī)制實現(xiàn)詳解
這篇文章主要為大家介紹了Angular 的 Change Detection機(jī)制實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10- 每個Angular版本在其生命周期中都經(jīng)歷了各個階段。組件在Angular中起著關(guān)鍵作用; 在這里,本文將討論Angular中的組件生命周期以及它們?nèi)绾斡绊懣蚣芩邪姹镜纳芷凇?/div> 2021-05-05
AngularJS+Bootstrap3多級導(dǎo)航菜單的實現(xiàn)代碼
將介紹如何用AngularJS構(gòu)建一個強大的web前端系統(tǒng)。文章介紹如何實現(xiàn)多限級導(dǎo)航菜單。本文圖文并茂給大家介紹的非常詳細(xì),感興趣的朋友參考下吧2017-08-08自定義Angular指令與jQuery實現(xiàn)的Bootstrap風(fēng)格數(shù)據(jù)雙向綁定的單選與多選下拉框
這篇文章主要介紹了自定義Angular指令與jQuery實現(xiàn)的Bootstrap風(fēng)格數(shù)據(jù)雙向綁定的單選與多選下拉框 的相關(guān)資料,需要的朋友可以參考下2015-12-12AngularJS 中的Promise --- $q服務(wù)詳解
這篇文章主要介紹了AngularJS 中的Promise --- $q服務(wù)詳解方法的相關(guān)資料,需要的朋友可以參考下2016-09-09最新評論