Ember.js: Kotak centang tidak dapat diklik jika terdapat di dalam elemen yang memiliki tindakan yang dilampirkan.

Dibuat pada 4 Des 2014  ·  4Komentar  ·  Sumber: emberjs/ember.js

Contoh sederhana,

dengan tag input type="checkbox" yang ada di dalamnya. Kotak centang dapat diklik seperti yang diharapkan. Sekarang lakukan tindakan pada div yang berisi, katakanlah untuk menangkap acara klik... kotak centang sekarang tidak dapat diklik. Anda dapat menangkap acara 'perubahan' dan melihat bahwa itu mencoba untuk bekerja seperti yang diharapkan tetapi dikembalikan setelah setiap waktu. Biola pasangan di bawah ini:

berfungsi sesuai harapan....
http://jsfiddle.net/yp128r1e/

tidak...
http://jsfiddle.net/yp128r1e/1/

Bug

Komentar yang paling membantu

Secara default, penolong tindakan mencegah tindakan default. Dalam hal ini, itu berarti bahwa kotak centang tidak akan memicu. Anda dapat menimpa ini dengan mengatur preventsDefault=false pada helper. Lihat http://jsfiddle.net/yp128r1e/3/.

Semua 4 komentar

@hilem Ini sebenarnya bukan masalah dengan semua jenis acara. Tampaknya secara khusus menjadi masalah dengan klik. Saya menduga Ember mencegah perilaku acara default yang menurut browser berarti kotak centang tidak boleh berubah status. Saya tidak percaya ini adalah bug. Solusinya adalah tidak menerapkan penangan tindakan dengan cara ini jika Anda juga ingin menangani hal-hal lain seperti kotak centang.

@wagenet Ini adalah pola desain yang sangat umum. Untuk dapat mengklik di mana saja dalam satu baris untuk memilih baris dan bukan hanya kotak centang baris. Kotak centang ditambahkan murni untuk memperkuat bahwa itu dapat dipilih dan untuk alasan aksesibilitas dan apa yang Anda katakan kepada saya adalah bahwa satu-satunya cara untuk menghadapinya pada dasarnya adalah tidak menggunakan kotak centang tetapi memalsukan kotak centang dengan gambar atau apa pun. Karena tidak ada cara lain untuk menangani ini. Yang memberi banyak beban pada pengujian aksesibilitas yang seharusnya baik-baik saja. Btw, ini bukan masalah dengan elemen bentuk lainnya. Saya hanya melihat perilaku ini dengan kotak centang. Satu hal untuk dikatakan bahwa Ember perlu membahas masalah ini untuk sementara waktu karena terlalu sulit untuk menangani cara kode saat ini dirancang, tetapi saya tidak melihat bagaimana Anda dapat berargumen bahwa ini bukan bug.

Secara default, penolong tindakan mencegah tindakan default. Dalam hal ini, itu berarti bahwa kotak centang tidak akan memicu. Anda dapat menimpa ini dengan mengatur preventsDefault=false pada helper. Lihat http://jsfiddle.net/yp128r1e/3/.

Terima kasih @wagenet !

Apakah halaman ini membantu?
0 / 5 - 0 peringkat