Chosen: Terpilih: siap tidak menembak

Dibuat pada 3 Apr 2014  ·  14Komentar  ·  Sumber: harvesthq/chosen

Sepertinya saya tidak bisa mendapatkan Chosen:ready to fire, dapatkah seseorang mengonfirmasi apakah penggunaan ini benar atau salah?

jQuery('.chzn-select').on(' terpilih:siap ', function() {
jQuery('li').ScrollText();
});

".chzn-select" adalah kelas yang dipilih terikat sebelum kode ini.

Terima kasih

Komentar yang paling membantu

Saya juga mengalami masalah saat selected:ready tidak diaktifkan.

Ini tidak berhasil:

$('select')
    .chosen()
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    });

tetapi mengikat acara sebelum membuat instance yang dipilih berhasil:

$('select')
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    })
    .chosen();

Semua 14 komentar

Saya kira Anda hanya mengikat pendengar Anda terlambat (jika Anda mengikatnya setelah yang dipilih sudah siap, itu tidak akan melihat acaranya). Coba ikat pendengar sebelum menerapkan yang dipilih

Ah, itu adalah bagian dari solusi. ada juga garis yang tidak mengikat semua acara dari yang dipilih sebelum mengaturnya yang menghapusnya. Saya percaya baris unbind ditambahkan karena keanehan di asp.net dan postback.

Terima kasih atas balasan cepat.

Tertutup. :+1:

Maaf satu hal lagi, saya seharusnya bisa mendapatkan objek yang dipilih dalam fungsi ini seperti di bawah ini, apakah itu benar?

jQuery('.chzn-select').on(' selected :ready ', function (dipilih) {
jQuery('li').ScrollText();
});

Saya mencari untuk mendapatkan elemen baru dan melakukan sesuatu untuk itu ketika siap. Apakah objek yang dipilih mengandung ini? Saya melihat obj memiliki hasil namun ini selalu tidak terdefinisi.

Oke, ini saya tutup lagi.

Saya bekerja ini tidak akan pernah berhasil. Karena saya ingin menerapkan acara ke setiap opsi di dropdown yang dipilih, namun masalahnya adalah opsi tidak dibuat sampai dropdown diklik. Oleh karena itu saya mungkin dapat memindahkan kode saya ke acara " selected:showing_dropdown ".

argumen pertama dari event listener selalu merupakan objek event. Parameternya adalah argumen kedua: http://harvethq.github.io/chosen/options.html#triggered -events

ah saya melewatkan parameter kedua. Terima kasih.

Anda harus mengikat acara Anda menggunakan delegasi (seperti $().live() ), karena elemen tidak harus ada di halaman saat mengikat:

$('.chosen-select').on('click', 'li', handlerFunction);

Lebih lanjut tentang delegasi acara di sini: https://learn.jquery.com/events/event-delegation/

Saya juga mengalami masalah saat selected:ready tidak diaktifkan.

Ini tidak berhasil:

$('select')
    .chosen()
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    });

tetapi mengikat acara sebelum membuat instance yang dipilih berhasil:

$('select')
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    })
    .chosen();

acara ini menembak. Tetapi dalam kasus pertama, pendengar Anda mungkin terdaftar setelah dipicu

@stof Klarifikasi yang bagus, terima kasih.

Hanya ingin tahu tetapi mengapa item daftar dibuat di acara "showing_dropdown" daripada acara "siap"?

Item daftar tidak dibuat di chosen:showing_dropdown .

chosen:ready dipicu ketika hasil dibuat dan Terpilih siap menerima acara, chosen:showing_dropdown dipicu setelah membuka Terpilih.

Jadi apa yang Anda bertanya-tanya tentang? ;)

Daftar "Hasil Terpilih" saya selalu kosong sampai saya memicu dropdown untuk dibuka. Saya menemukan cara lain untuk melakukan apa yang saya lakukan tetapi hanya sedikit ingin tahu tentang cara kerjanya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

vpode picture vpode  ·  5Komentar

jim-at-miramontes picture jim-at-miramontes  ·  4Komentar

scottdoc picture scottdoc  ·  7Komentar

lordspace picture lordspace  ·  6Komentar

piercemcgeough picture piercemcgeough  ·  5Komentar