2013-07-30 21 views
5

ứng dụng kiễu góc của tôi có một hình thức đăng nhập với một lĩnh vực đầu vào email/username:góc loại validate input = "email" as type = "text"

<input type="email" required/> 

Input là type = "email" nên correct keyboard is displayed in iOS.
Tuy nhiên, xác thực phải là đầu vào loại = "văn bản" để cho phép tên người dùng.

Về cơ bản tôi cần ghi đè lên góc để loại validate = "email" as type = "text"
Đây là một basic Plunker để bắt đầu.

Note: Tôi đã cố gắng sử dụng ng-pattern để xác nhận về regex nhưng nó dường như chỉ để làm việc cho type = "text"

Trả lời

5

Tôi không nghĩ rằng nó có thể thay đổi loại bao input =' email 'được xử lý trong góc mà không thay đổi đó là nguồn, nhưng có lẽ thay vào đó bạn có thể thử:

<input type="text" required late-email /> 
angular.module('yourApp').directive('lateEmail', function() { 
    return { 
     priority: -1, 
     link: function(scope, elem, attrs) { 
      elem.attr('type', 'email'); 
     } 
    }; 
}); 

điều quan trọng ở đây là ưu tiên hàng đầu, như angularjs chỉ thị đầu vào cần chạy (liên kết) đầu tiên như vậy sẽ sử dụng' văn bản 'như kiểu đầu vào, sau đó lateEmail sẽ ch loại đầu vào ange để gửi email.

+0

Đập Plunk với giải pháp của Codefather. Tôi không có iPhone của tôi để tay ngay bây giờ nhưng nhìn vào thanh tra tôi giả định nó sẽ làm việc - http://plnkr.co/edit/GAlhFQlMhGNHeSs2TKrJ?p=preview –

+0

Thử nghiệm trên iPad và nó hoạt động một điều trị. Cảm ơn Codefather, đánh dấu là chính xác. –

Các vấn đề liên quan