摘要:設(shè)置了屬性,清空一下內(nèi)容查看效果設(shè)置了屬性,增加內(nèi)容查看效果運(yùn)行效果以及用法其中以及請參照的參數(shù)列表,下面,僅列出與上個控件不同的參數(shù)。
最近在看Angular的知識,無論是書中還是網(wǎng)上,講解跟表單有關(guān)的指令集都是點(diǎn)到為止,講些基礎(chǔ)驗證,比如,是否為空,是否為email地址,更多的并沒有講解,但是,當(dāng)我查看Angular的官方文檔時,發(fā)現(xiàn)與input控件相關(guān)的指令集真的很豐富,有關(guān)HTML5新增的控件也有很多,所以,我試著將input相關(guān)的指令集部分的英文文檔再加上自己的理解翻譯了一下,如果有不當(dāng)?shù)牡胤竭€希望各位看觀指正。
Angular真的很強(qiáng)大,強(qiáng)大的讓人眼前一亮。
約定
參數(shù)名會使用駝峰式書寫。例如ngShow,此參數(shù)用在控件的屬性時,屬性名為:ng-show。以此為約定。
input用法
...
參數(shù)說明
參數(shù) | 類型 | 詳情 | |
---|---|---|---|
ngModel | string | 改選參數(shù),用于數(shù)據(jù)綁定 | |
name(optional) | string | 控件自定義名稱,運(yùn)行期間可使用些名稱控制控件 | |
required(optional) | string | 如果添加此屬性,并且內(nèi)容為空,則設(shè)置$error.required為true | |
ngRequired(optional) | boolean | 如果必填,則此屬性設(shè)置為true | |
ngMinlength(optional) | number | 如果輸入的長度小于此值,就會設(shè)置$error.min為true | |
ngMaxlength(optional) | number | 如果輸入的長度大于此值,就會設(shè)置$error.max為true。如果此值設(shè)置為負(fù)數(shù)或者非數(shù)值,則表示可輸入任意長度。 | |
ngPattern(optional) | string | 如果此屬性中的表達(dá)式不能匹配輸入的值,就會設(shè)置$error.pattern為true。如果表達(dá)式為RegExp對象,那么就會直接使用。如果表達(dá)式是一個字符串,那么Angular會在字符串外層增加^和$。比如,"abc"將會轉(zhuǎn)換為new RegExp("^abc&")。 | |
ngChange(optional) | string | onChange事件綁定 | |
ngTrim(optional) | boolean | 如果為false,不會修剪輸入。如果輸入框的類型為password,此屬性無作用。默認(rèn)是true |
小貼士:記得,在使用$error時,要使用控件的name值作為變量,不應(yīng)該使用ngModel值作為變量。
下面的代碼分別演示了required和ngMinlength屬性的用法,以及$error的實際應(yīng)用。
請注意ngShow中的內(nèi)容,使用的變量全部是name屬性的值。
var app = angular.module("myapp", []); app.controller("inputCtrl", function($scope) { $scope.input1 = "required"; $scope.input2 = "min"; });
運(yùn)行效果:https://jsfiddle.net/Lionney/my2ht8fx/
input[checkbox]、input[date]以及input[datetime-local]input[checkbox]用法
其中ngMode、name以及ngChange請參照input的參數(shù)列表,下面,僅列出與上個控件不同的參數(shù)。
參數(shù)說明
參數(shù) | 類型 | 詳情 | |
---|---|---|---|
ngTrueValue(optional) | expression | 當(dāng)選擇框為選中狀態(tài)時,則返回此屬性中的值。此屬性內(nèi)容默認(rèn)為表達(dá)式,所以,如果是字符型數(shù)據(jù),則要在外面使用"包含起來。比如:ng-true-value=""abc"",否則會按表達(dá)式處理。 | |
ngFalseValue(optional) | expression | 當(dāng)選擇框為未選中狀態(tài)時,則返回此屬性中值。其余同上。 |
input[date]用法
其中ngMode、name、required、ngRequired以及ngChange請參照input的參數(shù)列表,下面,僅列出與input控件不同的參數(shù)。
參數(shù)說明
參數(shù) | 類型 | 詳情 | |
---|---|---|---|
min(optional) | string | 日期選擇器是HTML5中新加的表單控件類型,此屬性是為了設(shè)置控件最小可選擇的日期。這個屬性必須使用ISO日期字符串(yyyy-MM-dd)格式。當(dāng)然,也可以插入變量(詳見注釋1)。如果不符合此屬性設(shè)置的最小值,則會設(shè)置$error.min為true。 | |
max(optional) | string | 此屬性為設(shè)置日期控制所能選擇的最大日期。其它與上一參數(shù)相同。如果不符合此屬性設(shè)置的最小值,則會設(shè)置$error.max為true。 | |
ngMin(optional) | datestring | 此為angular的屬性,設(shè)置后,不會影響控件的最小可選擇日期,如果用戶選擇填寫的與屬性不符,則會設(shè)置$error.min為true。屬性設(shè)置方法與min參數(shù)相同 | |
ngMax(optional) | datestring | 此為angular的屬性,設(shè)置后,不會影響控件的最大可選擇日期,如果用戶選擇填寫的與屬性不符,則會設(shè)置$error.max為true。屬性設(shè)置方法與max參數(shù)相同 |
注釋1:min="{{minDate | date:"yyyy-MM-dd"}}"
input[datetime-local]用法
此控件與date控件一樣,只是在設(shè)置min、max、ngMin、ngMax屬性時,內(nèi)容有所不同,因為此控件是選擇日期及時間,所以設(shè)置的時候要加上時間,格式依然要使用ISO規(guī)定的日期時間格式(yyyy-MM-ddTHH:mm:ss),當(dāng)使用日期過濾器時,格式化為:"{{maxDatetimeLocal | date:"yyyy-MM-ddTHH:mm:ss"}}"
其它的參數(shù)說明與date是一樣,可以參照date參數(shù)說明。
下面實例為使用了以上控件的綜合實例,代碼如下:
var app = angular.module("checkbox", []); app.controller("ckCtrl", function($scope) { $scope.ck1 = true; $scope.ck2 = 7 $scope.dd = new Date("2017-01-01"); $scope.dl = new Date("2017-01-01 08:08:00"); });
程序說明
當(dāng)使用$error時,必須同時設(shè)置控件的name與ngModel屬性,使用name屬性值做為變量,否則,程序?qū)⑦_(dá)不到驗證效果。驗證的提示信息也必須放在form表單中,見代碼中帶有ngShow部分內(nèi)容。
checkbox的初始化有兩種方式,第一種即此代碼中所展示的ck1。如果沒有設(shè)置ngTureValue/ngFalseValue的話,可以直接賦值true/false。第二種為此代碼中所展示的ck2。如果設(shè)置了ngTureValue/ngFalseValue,那么要使用ngTureValue/ngFalseValue中的值來初始化選擇框狀態(tài)。
運(yùn)行效果https://jsfiddle.net/Lionney/snojqoqy/
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/78793.html
摘要:把當(dāng)中涉及事件的屬性整理一下,此文檔是基于英文文檔整理的。約定此文中表示屬性名。用法參數(shù)參數(shù)類型詳情提交表單時,表達(dá)式被觸發(fā)事件對象與一樣可獲得綜合實例代碼代碼地址如有問題,請指正。 把Angularjs當(dāng)中涉及DOM事件的屬性整理一下,此文檔是基于1.4.8英文文檔整理的。 約定:此文中ngXxx表示ng-xxx屬性名。 ngBlur 用法 ... 參數(shù) 參數(shù) 類型 詳情 ...
摘要:事件只針對輸入框值的真實修改,而不是通過來修改。指令將給定表達(dá)式的值替換元素的內(nèi)容。指令還有另外一種轉(zhuǎn)換方式,如果你有字符串?dāng)?shù)組希望在輸入框中顯示,你可以在上使用指令。 指令 Directive 指令系統(tǒng)(Directive)是Angular應(yīng)用的一個重要特性。 是通過對DOM元素的標(biāo)簽丶屬性來增強(qiáng)HTML表現(xiàn)力,為其增加一些特定功能。本篇參考文檔Angular菜鳥教程 內(nèi)置指令 這里...
摘要:綜上所述兩者是出于不同的目的被創(chuàng)建的,解決的也是不同的問題。檢測模型變化的過程稱為循環(huán)。由指令注冊的事件處理函數(shù)執(zhí)行。該回調(diào)函數(shù)會更新插值表達(dá)式所在的屬性。模塊主要關(guān)系腳本加載問題。 AngularJS面試題 1.與jQuery的比較 jQuery js函數(shù)庫 封裝簡化dom操作 使用jquery的思想是:我擁有一個DOM元素并且想讓它去做某件事。也就是命令式編程思想。 angula...
摘要:表單和其中的表單控件提供了驗證服務(wù),可以讓用戶在提交一般在點(diǎn)擊類型為的按鈕時提交表單前意識到自己有非法不符合要求,以下都將稱為非法的輸入。為了編寫一個可靠的應(yīng)用程序,服務(wù)端驗證是不可或缺的。促發(fā)條件至于自定義表單驗證,我會另寫一篇。 表單 網(wǎng)頁中用戶于服務(wù)端交互數(shù)據(jù)的表單控件有input、select、textarea,而表單是將為了達(dá)到一個目的(登錄、注冊等)各種控件整合到一起的一個...
閱讀 1747·2023-04-25 23:43
閱讀 926·2021-11-24 09:39
閱讀 725·2021-11-22 15:25
閱讀 1725·2021-11-22 12:08
閱讀 1092·2021-11-18 10:07
閱讀 2080·2021-09-23 11:22
閱讀 3350·2021-09-22 15:23
閱讀 2503·2021-09-13 10:32