2015-03-27 20 views
22

'da "Sonuç Bulunamadı" dilini nasıl değiştirirsiniz? Select2'yi başlatırken ve "undefined" işlevi atanırken "language.noMatches" seçeneğini kullanmaya çalıştım? Bu metnin biraz değiştirilmesine nasıl başlarım? Bulunamadıysa kullanıcıdan girişi ekleyebilecek bir html düğmesi eklemek istiyorum. Bunu düz metin kadar bir işlev olarak denedim. Bunu yapıp yapmadığını görmek için tüm html'yi de kaldırdım.Select2 v4.0

$('#search-select').select2({ 

    ... 

    "language": { 
     "noMatches": function(){ 
      return "No Results Found <a href='#' class='btn btn-danger'>Use it anyway</a>"; 
     } 
    } 
}); 

Bu Select2 v3.5

+0

nedeniyle bir [mevcut hata] olarak (https : //github.com/select2/select2/issues/3202) çevirilerin nasıl çalıştığını, hepsini 'dil' altında belirtmeniz gerekir. –

cevap

43

seçenek noMatches yılında "formatNoMatches" her yerde kaynak kodunda görünmüyor önceden idi.

Gerçek seçenek noResults olarak adlandırılmıştır. senin örnek çalışma sürümü:

$('#search-select').select2({ 
 

 
    ... 
 

 
    "language": { 
 
     "noResults": function(){ 
 
      return "No Results Found <a href='#' class='btn btn-danger'>Use it anyway</a>"; 
 
     } 
 
    }, 
 
    escapeMarkup: function (markup) { 
 
     return markup; 
 
    } 
 
});

Ayrıca escapeMarkup geçersiz kılmak gerekir, bu nedenle düğmesi bu issue göre, doğru olarak görünür.

+3

Kullanıcı girişini nasıl alabilirim ve Sonuçlara geçmez? e.g '" noResults ": function (term) { + iade terimi +" Bulunamadı, lütfen başka bir tane deneyin "; } – Shiro

+0

Çalışıyor, ama @monteirobrena cevabı en iyi yoldur. –

+0

Not: Bu gerçekten çok yardımcı oldu, çünkü herhangi bir mesajı nasıl değiştireceğimi bilmiyordum. Bu i18n dir içindeki tüm mesajlar için geçerlidir. –

28

Muhtemelen, kullanmak istediğiniz dile ait komut dosyasını eklemeniz gerekir. Böyle bir şey:

<script src="select2/js/i18n/pt-BR.js" type="text/javascript"></script> 

Ve sonra varsayılan dili ayarlayabilirsiniz:

$(".select2").select2({ 
    "language": "pt-BR" 
}); 
+5

Bu kabul edilen cevap olmalı. – Dzhuang

+0

Bu güzel ve çalışan çözüm için teşekkür ederiz. Resmi select2 belgelerinde eklenmelidir! Bazı kontrollerden sonra, pt-BR.js herhangi bir dizinde yer alabilir ve herhangi bir şekilde adlandırılabilir. Önemli nokta, dosyanın başında, e.define ("select2/i18n/pt-BR") döndürülmesidir. "..." tanınmak için ... –

+0

Teşekkür ederim .Bu uygulama çok dilli ise – Luitame

7

seçme 2.5 seçeneği görünüyor formatNoMatches:

$('#search-select').select2({ 
    formatNoMatches: function() { 
    return "No Results Found <a href='#' class='btn btn-danger'>Use it anyway</a>"; 
    } 
});