2013-05-12 45 views
33

Từ chế độ xem thứ nhất có vẻ như data-ng-click có thể truyền một số dữ liệu làm đối số cho phương thức nên được gọi trong khi nhấn nút.Sự khác nhau giữa ng-click và data-ng-click trong angularjs là gì?

Nhưng tôi không thấy sự khác biệt.

Tôi đã theo đoạn mã:

HTML

<input 
    type="button" 
    value="Fess" 
    ng-click="toggle(2)"> 

HOẶC

<input 
    type="button" 
    value="Fess" 
    data-ng-click="toggle(2)"> 

JS

$scope.toggle = function (valueS) { 
    alert(valueS);   
} 

Cả hai công việc.

Xin cảm ơn,

Trả lời

32

Chúng giống nhau. Bạn có thể sử dụng data-ng-click để tạo html hợp lệ.

+1

Hmmm, tôi không thấy bất kỳ lỗi hoặc cảnh báo nào trên 'ng-click' –

+9

Bạn sẽ nhận được' Thuộc tính ng-click không được cho phép trên phần tử đầu vào tại thời điểm này.' nếu bạn vượt qua nó thông qua trình xác thực html. Trong khi 'data-ng-click' là một thuộc tính hợp lệ trong html5. – NARKOZ

11

Từ angular docs on directives:

Chỉ có những cái tên lạc đà cased như ngBind. Chỉ thị có thể là được gọi bằng cách dịch tên trường hợp lạc đà thành trường hợp rắn với các ký tự đặc biệt :, - hoặc _. Tùy chọn chỉ thị có thể là được đặt trước bằng x- hoặc dữ liệu để làm cho trình xác thực HTML tuân thủ. Ở đây là danh sách một số tên chỉ thị có thể có: ng: bind, ng-bind, ng_bind, x-ng-bind và dữ liệu-ng-ràng buộc.

Rời khỏi chúng là hoàn toàn tốt cho mục đích thực tế. Nó chỉ là nếu bạn chạy nó thông qua một dịch vụ validator html, nó sẽ không vượt qua như complliant.

3

HTML5 có khả năng để nhúng dữ liệu tùy chỉnh các thuộc tính trên tất cả các phần tử HTML

Những thuộc tính dữ liệu tùy chỉnh mới bao gồm hai phần:

Tên thuộc tính thuộc tính Các dữ liệu tên phải có ít nhất một ký tự dài và phải được bắt đầu bằng 'data-'. Nó không được chứa bất kỳ chữ hoa nào.

Giá trị thuộc tính Giá trị thuộc tính có thể là bất kỳ chuỗi nào.

<li data-spacing="30cm" data-sowing-time="February to March">Celery</li> 

nguồn: http://html5doctor.com/html5-custom-data-attributes/

1

Tìm thấy một sự khác biệt khi sử dụng có và không có mẫu.

Khi phần tử của tôi ở trong Biểu mẫu, chúng hoạt động giống nhau.

Khi tôi sử dụng data-ng-click trên phần tử không có trong biểu mẫu, Sự kiện nhấp chuột không xảy ra.

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