Nói rằng tôi có điều này:Có thể <select> bị ràng buộc vào một mảng theo chỉ mục trong Angular.js không?
$scope.items = ["foo", "bar", "baz"];
$scope.index = 1;
Làm thế nào để liên kết đến một <select>
?
Tôi đã thử: <select ng-model="index" ng-options="i for i in items">
nhưng sau đó chọn tùy chọn trống tại thời điểm tải.
Điều này: <select ng-model="items[index]" ng-options="i for i in items">
dường như hoạt động ban đầu nhưng khi thay đổi lựa chọn, giá trị tại mục [index] được thay đổi, rõ ràng không phải là thứ chúng tôi muốn.
Giải pháp thay thế của tôi là ánh xạ mảng đó tới cặp {num, title} nhưng logic đó cắt lên bộ điều khiển.
Tôi không có lựa chọn ban đầu nào với phương pháp này mặc dù 'index = 1'. Khi theo dõi giá trị tôi thấy rằng khi lựa chọn được thực hiện, 'index' trở thành chỉ mục như một chuỗi' index = "1" '. Có lẽ có một loại không phù hợp? –
Cảm ơn bạn đã chỉnh sửa, đúng vậy! Không hoàn toàn tốt đẹp có lẽ nhưng nó đập lộn xộn bộ điều khiển bằng lề công bằng. –
@sjmulder lưu ý rằng '[] .indexOf' không có trong IE8 trong trường hợp bạn phải hỗ trợ nó: ( –