2012-07-24 25 views
6

Sử dụng AngularJS, tôi đã nhận thấy một mẫu có vẻ sai với tôi.Sử dụng AngularJS ng-bind và ng-href cùng nhau?

Khi tạo bảng, dữ liệu của tôi bị ràng buộc khi sử dụng ng-bind. Nhưng nếu tôi cần văn bản trong ô để liên kết đến nội dung nào đó, liên kết phải được tạo theo cách thủ công.

Một ô không liên kết bảng trông giống như:

<td ng-bind="customer.name"></td> 

Nhưng nếu tôi muốn tạo ra một liên kết, tôi làm:

<td><a ng-href="/customer/{{customer.id}}">{{customer.name}}</a></td> 

Có cách nào để tạo ra các liên kết sử dụng các thuộc tính? Một cái gì đó như:

<td ng-bind="customer.name" ng-href="/customer/{customer.id}"></td> 

Trả lời

7

Đây không thực sự là vấn đề AngularJS; đây là nhiều hơn về cách HTML hoạt động. HTML không cho phép bạn chỉ thêm thuộc tính href vào bất kỳ phần tử nào để tạo liên kết. Bạn cần sử dụng thẻ neo để tạo liên kết.

Nếu muốn, bạn có thể write a directive để tạo thẻ liên kết bên trong ô. Nhưng điều đó hầu như không có giá trị, và hầu hết có lẽ sẽ đồng ý rằng nó tạo ra ít đánh dấu ngữ nghĩa hơn, khó hiểu hơn.

liên kết HTML spec: http://www.w3.org/TR/html4/struct/links.html

5

Bạn có thể sử dụng ng-bind, vâng, nhưng bên trong <a>, như @btford nói.

<td><a ng-href="/customer/{{customer.id}}" ng-bind="customer.name"></a></td> 
Các vấn đề liên quan