2016-02-20 1 views
0

J'essaye de configurer le module select2. Cela fonctionne bien pour le moment, mais quand je tente de désactiver la sensibilité à la casse, je ne suis pas en mesure de le comprendre.select2: désactive la casse sensible

Voici les codes.

<script type="text/javascript"> 
var lastResults = []; 

$("#tags").select2({ 
    multiple: true, 
    tags: true, 
    placeholder: "Please enter keywords", 
    tokenSeparators: [',', ' '],//[","], 
    initSelection : function (element, callback) { 
     var data = []; 
     $(element.val().split(",")).each(function() { 
      data.push({id: this, text: this}); 
     }); 
     callback(data); 
    }, 
    ajax: { 
     multiple: true, 
     url: "fetch_keywords.php", 
     dataType: 'json', 

     data: function(term,page) { 
         return { 
          term: term 
          }; 
        }, 
        results: function(data,page) { 
         lastResults = data; 
          return {results: data}; 

        }, 
    }, 
    maximumSelectionSize: 3, 
    minimumInputLength: 3, 
    maximumInputLength: 30,      

createSearchChoice: function(term) { 

    var text = term + (lastResults.some(function(r) { 

     return r.text == term 
    }) ? "" : " (new)"); 

    return { 
     id: term, 
     text: text 
    }; 
    }, 
}); 

J'ai vérifié cette question select2: Disable case-sensitive matches mais je ne suis pas sûr de savoir comment puis-je utiliser le même dans mon code.

Si l'utilisateur est entré test de il retournera le match de la base de données, mais si l'utilisateur entrer test puis créer une nouvelle balise.

Merci

+0

J'ai eu une autre réponse pour les cas sensibles désactivés, vérifiez-le [ici] (https://stackoverflow.com/a/46190702/8601622). –

Répondre

1

La seule partie de la question que j'ai attrapé est la comparaison des chaînes tout en ignorant la casse des lettres.

Vous pouvez le faire en convertissant les deux chaînes en majuscules ou minuscules avant de les comparer.

Par exemple lower(string) == lower(otherString).

Ne me souviens pas exactement comment cela se fait en JavaScript.

+0

Merci pour votre réponse, mais où dois-je changer cela? Je cherchais cette partie. – Ironic

+0

peut-être r.text == terme? Je ne suis pas bon avec javascript/jquery, où les comparez-vous exactement? –