Saya menggunakan JS Angular dan saya perlu mengatur opsi yang dipilih dari kontrol daftar dropdown menggunakan JS sudut. Maafkan saya jika ini konyol tapi saya baru dengan Angular JS
Berikut adalah kontrol daftar dropdown html saya
<select ng-required="item.id==8 && item.quantity > 0" name="posterVariants"
ng-show="item.id==8" ng-model="item.selectedVariant"
ng-change="calculateServicesSubTotal(item)"
ng-options="v.name for v in variants | filter:{type:2}">
</select>
Setelah itu dihuni saya dapatkan
<select ng-options="v.name for v in variants | filter:{type:2}" ng-change="calculateServicesSubTotal(item)"
ng-model="item.selectedVariant" ng-show="item.id==8" name="posterVariants"
ng-required="item.id==8 && item.quantity > 0" class="ng-pristine ng-valid ng-valid-required">
<option value="?" selected="selected"></option>
<option value="0">set of 6 traits</option>
<option value="1">5 complete sets</option>
</select>
Bagaimana saya bisa mengatur kontrol untuk value="0"
dipilih?
<option value="0" ng-selected="true">set of 6 traits</option>
Jawaban:
Saya harap saya mengerti pertanyaan Anda, tetapi
ng-model
arahan menciptakan ikatan dua arah antara item yang dipilih dalam kontrol dan nilaiitem.selectedVariant
. Ini berarti bahwa mengubahitem.selectedVariant
JavaScript, atau mengubah nilai dalam kontrol, memperbarui yang lain. Jikaitem.selectedVariant
memiliki nilai0
, item itu harus dipilih.Jika
variants
array objek,item.selectedVariant
harus diatur ke salah satu objek tersebut. Saya tidak tahu informasi mana yang Anda miliki di ruang lingkup Anda, tetapi inilah sebuah contoh:JS:
HTML:
Ini akan membiarkan item "b" dipilih.
sumber
$scope
variabel. Jadi dengan asumsi Anda berada dalam satu lingkup, di controller Anda, Anda bisa mengatakan$scope.item.selectedVariant = 0
, untuk menetapkan nilai yang dipilih default. Anda juga dapat mengatur variabel langsung pada kontrol, dalam HTML, menggunakan arahan ng-init , tapi itu menjadi agak berantakan menurut saya!variants
ada di ruang lingkup Anda? Anda harus menetapkanitem.selectedVariant
tepat ke itemvariants
.Saya tidak tahu apakah ini akan membantu seseorang atau tidak, tetapi karena saya menghadapi masalah yang sama, saya berpikir untuk berbagi bagaimana saya mendapatkan solusinya.
Anda dapat menggunakan trek menurut atribut di
ng-options
.Asumsikan bahwa Anda memiliki:
Anda bisa menyebut Anda
ng-options
sebagai:Semoga ini bisa membantu seseorang di masa depan.
sumber
ngModel
benar, tetapi tidak berfungsi sampai saya menambahkantrack by
! Terima kasih!Jika Anda menetapkan nilai 0 untuk
item.selectedVariant
itu harus dipilih secara otomatis. Lihat sampel di http://docs.angularjs.org/api/ng.directive:select yang memilih warna merah secara default dengan hanya menetapkan$scope.color='red'
.sumber
saya lihat di sini sudah menulis jawaban yang baik, tetapi kadang-kadang menulis yang sama dalam bentuk lain dapat membantu
sumber
Cara sederhana
Jika Anda memiliki Pengguna sebagai respons atau Array / JSON yang Anda tentukan, Pertama, Anda harus menetapkan nilai yang dipilih di controller, kemudian Anda memasukkan nama model yang sama dalam html. Contoh ini saya tulis untuk menjelaskan dengan cara termudah.
Contoh sederhana di
dalam Pengontrol:
HTML Anda
contoh kompleks
Di Dalam Pengontrol:
HTML Anda
sumber
Ini bisa bermanfaat. Dosis binding tidak selalu bekerja.
Sebagai contoh. Anda mengisi model sumber daftar opsi dari layanan lainnya. Nilai yang dipilih diketahui sebelum daftar pengisian dan ditetapkan. Setelah menjalankan rest-request dengan opsi daftar $ http dilakukan. Tetapi opsi yang dipilih tidak diatur. Dengan alasan yang tidak diketahui AngularJS di shadow $ digest mengeksekusi tidak mengikat dipilih seperti yang seharusnya. Saya harus menggunakan JQuery untuk mengatur yang dipilih. Itu penting! Angular in shadow menambahkan awalan ke nilai attr "value" untuk dihasilkan oleh ng-repeat optinos. Untuk int itu adalah "nomor:".
sumber
Coba yang berikut ini:
File JS
File HTML
sumber
Ini adalah kode yang saya gunakan untuk menetapkan nilai yang dipilih
coba ini pada kerangka sudut
sumber
JS:
sumber