2016-10-12 15 views
7

Seçkin 4.0.3 kullanıyorum. E-posta adreslerini girmek için bir select2 kutum var ve tüm e-posta adreslerinin .val() numaralı telefona dahil edildiğinden emin olmak istiyorum, aynı zamanda kullanıcının arama alanında hala yazıyor olması.select2 tek seçiminde etiket oluşturma nasıl tetiklenir (örn. Bitişik düğmeye basıldığında)?

Form element

form alanı $('.invite-emails-field') tarafından başvurulmaktadır. Gönder düğmesine bastığımda, olay işleyicide $('.invite-emails-field').val() sadece ilk iki adresi [email protected] ve [email protected] verir, ancak üçüncü adres ([email protected]).

$('.invite-emails-field').select2({ 
    tags: true, 
    tokenSeparators: [',', ' '], 
    selectOnBlur: true 
}); 

selectOnBlur etkisi yoktur ve ben Select2 v4 çalışır başka bir şey bulamıyorum:

Bu benim Select2 elemanı başlatmak nasıl. Çeşitli unsurlarda çeşitli olayları kovmaya çalıştım, hiçbiri işe yaramadı.

Ben bekliyoruz ben arama alanına [email protected] sonra ne olursa olsun içeriğinden Etiket oluşturmaya tetiklemek için Select2 kutusuna bazı arama yapabilirsiniz ve bu daha sonra .val() ile bir dizi döndüren, Gönder düğmesine bastığınızda her üç adres.

Güncelleme: Oynatmanız için bir jsFiddle oluşturdum. Böyle girişi girin:

View of jsFiddle before pressing Send button

ve ardından Gönder butonuna basın, göreceksiniz:

View of jsFiddle after pressing Send

[email protected] çıktısı eksik nerede.

Gerçek uygulamamda, yalnızca etiketleme davranışını istediğim için açılır menüyü devre dışı bıraktığımı unutmayın.

+0

biz demo olabilecek bir keman oluşturmak mümkün olabilir misin:

$('select').select2({ selectOnClose: true }); 

Burada resmi belgelere bakın? –

+0

@SamHolmes Buna baktığınız için, sorunu gösteren bir minimal jsFiddle oluşturdum ve bunu benim soruma güncellem olarak ekledim. Link https://jsfiddle.net/cn19gmfq/ –

+0

Güncelleme linki: https://jsfiddle.net/mjdemilliano/cn19gmfq/8/ –

cevap

6

selectOnClose'u ekleyip true'a ayarlamanız gerekir, böylece arama girişini kapatıp/kapattığınızda sizin için etiket oluşturur. https://select2.github.io/options.html#can-i-select-the-highlighted-result-when-the-dropdown-is-closed

+0

Çalışıyor, teşekkürler! Yine de bir noktada bunu denedim ama yine de ... Bu arada, son zamanlarda select2 ile bazı kaliteli zaman geçirdim: sadece bana mı yoksa select2 v4 belgeleri ciddi olarak eksik mi? Gönderdiğim bağlantının başlığının, bu seçeneğin benim sorunumla ilgisi olduğunu tahmin etmemiştim. "Düşüşün kapanması" açısından düşünmüyorum (aslında, gerçek sitemde etiketleme davranışını istediğim için devre dışı bıraktım), sadece formdaki başka bir düğmeye basıyorum ve hepsini okumak istiyorum seçim kutusunda geçerli değerler. –

İlgili konular