2014-09-08 21 views
6

Tôi đang sử dụng Ionic Framework.
Tôi muốn nhập tùy chọn đầu tiên làm mặc định nhưng thực hiện theo cách này không hoạt động.
Tôi có thể làm gì?Chọn tùy chọn mặc định không hoạt động với Ionic Framework

<select ng-model="newSpesaAereo.valuta"> 
    <option ng-selected="selected">Euro</option> 
    <option>Dollaro</option> 
    <option>Dollaro canadese</option> 
    <option>Sterlina</option> 
</select> 

enter image description here

Nếu tôi phân tích trang với tiện ích cho nhà phát triển Google Chrome tôi xem này.

enter image description here

Nếu tôi sửa HTML này và tôi xóa các hàng đã chọn, sau đó Euro là nhìn thấy được.

Tại sao điều này lại xảy ra?

Trả lời

2

Bạn cần sử dụng ng-selected thay vì chỉ được chọn.

https://docs.angularjs.org/api/ng/directive/ngSelected

<select ng-model="newSpesaAereo.metodoPagamento"> 
    <option ng-selected="selected">Carta di credito</option> 
    <option>Bancomat</option> 
    <option>Contanti</option> 
    <option>Altro</option> 
</select> 
+1

Vẫn không hoạt động ... – Marco

+0

tôi đã thêm nhiều chi tiết cho vấn đề của tôi. – Marco

+0

Bạn có thể thử tạo một codepen hoặc một cái gì đó mà chúng ta có thể thấy vấn đề không? –

10

Lý do lựa chọn mặc định không hoạt động là bởi vì, trong điều khiển của bạn, bạn đã có thể khởi tạo mô hình mẫu của bạn như sau:

$scope.newSpesaAereo = {} 

Nếu bạn muốn đặt tùy chọn biểu mẫu mặc định, bạn cũng nên đặt chúng trong mẫu biểu mẫu. Ví dụ: đặt 'valuta' thành 'Euro' như sau:

$scope.newSpesaAereo = { valuta: "Euro" } 

Tôi hy vọng điều này sẽ hữu ích!

P.S khi đăng sự cố như thế này, bạn cũng nên bao gồm mã cho bộ điều khiển mà chế độ xem được ràng buộc.

+0

+1 Tôi hiển thị các phần tử biểu mẫu khác dựa trên giá trị đã chọn. Vì vậy, thiết lập mặc định trong đối tượng như thể hiện trong giải pháp này làm việc hoàn hảo cho tôi. – Devner

+0

Bạn đã đúng, tôi đã có một đối tượng trống khởi tạo! Thay đổi điều đó và nó hoạt động, cảm ơn :) –

13

Đặt ng-selected="true".

Ví dụ:

<option ng-selected="true">Carta di credito</option> 
+0

Mặc dù giải pháp này không hoạt động trong trường hợp này, nó không thành công trong trường hợp khác. Tôi hiển thị (và ẩn) các phần tử biểu mẫu khác dựa trên giá trị đã chọn theo mặc định. Mặc dù ng-selected = "true" hiển thị giá trị được chọn theo mặc định, nó không hiển thị các phần tử biểu mẫu khác được kết nối với tùy chọn đã chọn này. Vì vậy, nếu bạn đang tìm kiếm một chức năng tương tự như của tôi, tôi khuyên bạn nên thử giải pháp được cung cấp bởi @ lisimba.gilkes vì ​​nó hoạt động hoàn toàn tốt. – Devner

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