2016-07-07 10 views
0

Wir versuchen, die Hintergrundfarbe auf einer Kendo Combobox einzustellen. Durch das Festlegen der Farbe werden jedoch auch die Datenbindungen gelöscht. Im Beispiel unten ist der Hintergrund der zweiten Combobox (cb2) festgelegt, hat aber keine Einträge.Einstellen der Hintergrundfarbe auf Kendo Combobox Entfernt Bindungen

JsFiddle

<div id="example"> 
    <input id="cb1" class="combobox" /> 
    <input id="cb2" class="combobox" /> 
    <input id="cb3" class="combobox" /> 
</div> 


var viewModel = kendo.observable({ 
    allowCustomValues: false, 
    testData: new kendo.data.DataSource({ 
     data: [{ 
      id: 1, 
      name: 'BMW' 
     }, { 
      id: 2, 
      name: 'Audi' 
     }, { 
      id: 3, 
      name: 'Ferrari' 
     }] 
    }) 
}); 

$('.combobox').kendoComboBox({ 
    dataSource: viewModel.testData, 
    autoBind: false, 
    dataTextField: 'name', 
    dataValueField: 'id', 
    suggest: true, 
    placeholder: 'Select a car' 
}); 

kendo.bind('#example', viewModel); 

// ****************************************** 
// SET BACKGROUND COLOR 
// ****************************************** 
var cb = $("#cb2").kendoComboBox().data("kendoComboBox"); 
cb.wrapper.find(".k-input").css("background", "#FFFFE0"); 

//ddl.input.css("background", propertyValue); 

Antwort

1

ändern diese:

var cb = $("#cb2").kendoComboBox().data("kendoComboBox"); 

dazu:

var cb = $("#cb2").data("kendoComboBox"); 

Einschließlich .kendoComboBox() verursacht die ComboBox neu initialisiert werden (bis zu einem gewissen Grad), verursacht das Problem, das Sie beobachten. Die Auswahl # cb2 wurde bereits als ComboBox instanziiert, so dass die Methode nicht erneut aufgerufen werden muss.

Verwandte Themen