2016-05-13 34 views
1

我想在mvc-asp.net創建一個登錄形式angularjs驗證錯誤,

這裏我的代碼:

<span style="color:red" ng-show="frm.Email.$dirty || frm.Email.$invalid"> 
    <span ng-show="frm.Email.$error.required">ایمیل را وارد کنید</span> 
    <span ng-show="frm.Email.$error.email">ایمیل وارد شده نامعتبر است</span> 
</span> 

當我離開文本框清空錯誤時,會出現frm.Email.$error.required但是當我輸入了無效的電子郵件mike.comng-show="frm.Email.$error.email誤差不appear.why?

+0

您能否顯示您的表單和您的輸入? – sp00m

回答

2

看來你正在使用

<input type="text">. 

對於電子郵件,你應該使用

<input type="email">. 

爲了驗證電子郵件地址,角使用HTML5validinvalid控制。

0

我想你忘記了輸入元素提供NG-pattern屬性

3

你必須使用的

<input type="email"> 

代替

<input type="text"> 

或文本與包含一個ng-pattern在這種情況下你需要的模式。

PS:不要忘記有<form novalidate>在你的形式,以避免HTML5驗證和應用的角度驗證

0
"form.mail.$error.email" //**form-name.input-name.$error.email** 

<form ng-app="" name="form"> 
<div> 
     <label>e-mail:</label><input type="email" id="mail"name="mail" ng-model="mail"> 
     <p><div ng-show="form.mail.$error.email">Enter the valid mail id</div></p> 
</div> 

在NG-節目我已經檢查的驗證電子郵件.. 形式指名的表單標籤,郵件是指輸入類型的名稱電子郵件$錯誤是指檢查錯誤和電子郵件是指電子郵件的類型..

+0

@jps感謝您的反饋..!在ng-show中,我已經在驗證中檢查了電子郵件.._ form_引用了**表單標籤的名稱**,** mail **引用了輸入類型的名稱email $ error指的是檢查錯誤並且電子郵件是指類型的電子郵件.. –

+0

感謝您的信息.. –