2015-09-29 13 views
5

Ho un prescelto:
Come aggiungere un'immagine nelle opzioni Select2?

<select data-bind="options : PeriodeOptions, optionsValue : 'Periode', 
optionsText : function(item) { return AddLock(item)}" id="SelectPeriode"></select> 


E ho il mio fucntion;

//am - Fonction permettant d'ajouter le cadenas à côté de la Periode si elle est cloturée 
     function AddLock(pItem) { 
      if (!pItem.IsCloturePeriode) 
       return pItem.Periode; 
      var lTemplate = $('<span>' + pItem.Periode + '<img src="/Ressources/Images/Locked.png"/></span>'); 
      return lTemplate; 
     }; 


Mi manda un oggetto: enter image description here
Aiutateci!

risposta

5

non sono sicuro se la questione è aggiunto in modo non corretto, ma non vedo la vostra funzione select2 nel codice avete dato

però ecco un esempio di codice select2 templating che avrebbe utilizzato le immagini nella select e il risultato

function formatData (data) { 
    if (!data.id) { return data.text; } 
    var $result= $(
    '<span><img src="/Ressources/Images/Locked.png"/> ' + data.text + '</span>' 
); 
    return $result; 
}; 

$("#SelectPeriode").select2({ 
    templateResult: formatData, 
    templateSelection: formatData 

}); 
+0

Sì, ho una funzione select2, non è mostrata nel codice. Ho trovato in realtà la soluzione, è simile alla tua, ma mi piace di più la tua. Ho fatto: '' - Ho lasciato opzioni e optionValue (opzione removedText). E in templateResult e templateSelection ho fatto: ' function (item) {var lTemplate = $ ( '' + item.text + '' ); return lTemplate; }, ' –

Problemi correlati