2017-04-10 1 views
0

Je travaille avec MagicSuggestion pendant quelques jours:Magicsuggest sélection de changement par programme

<div> 
    <div id="magicsuggest"></div> 
</div> 

VehicleNameList = [{id: 1, name: "Volvo"}, 
        {id: 2, name: "Audi"}, 
        {id: 3, name: "Volkswagen"}] 

vehicleNameSelected = "Volvo" 

magicVehicleChange = $('#magicsuggest').magicSuggest({ 
         data: VehicleNameList, 
         placeholder: function() { 
          $('.ms-sel-ctn input').attr("placeholder", vehicleNameSelected); 
         } 
        }); 


$(magicVehicleChange).on('selectionchange', function (e, m, sel) { 
        if (sel.length == 0) return; 
        for (i = 0; i < VehicleNameList.length; i++) { 
         if (typeof sel[0] != 'undefined') 
          if (VehicleNameList[i].name == sel[0].name) { 
           vehicleNameSelected(sel[0].name); 
           break; 
          } 
        } 
        if (typeof sel[0] != 'undefined') { 
         magicVehicleChange.collapse(); 
         this.clear(); 
        } 
       }); 

Le problème est que je veux changer le nom du véhicule sélectionné quand un bouton est modifié, par exemple pour « Volkswagen ", en appelant:

magicVehicleChange.setValue([{ name: "Volkswagen", value: 3 }]) 

mais sans succès. Qu'est-ce que je fais de mal? Y at-il un moyen de changer la sélection quand un bouton est pressé?

Répondre

0

Je pense que vous devez changer:

magicVehicleChange.setValue([{ name: "Volkswagen", value: 3 }]) 

à

magicVehicleChange.setSelection([{ id: 3, name: "Volkswagen" }])