2016-04-01 65 views
0

Site bilgisi içeren bir modelim var.SAPUI5 - FilterOperator.Contains Düzgün çalışmıyor

"SearchString" in başlangıcında (FilterOperator.Contains'u kullanarak) bir arama yaparsam, giriş listesi iyi doldurulur, ancak dizenin başında değil, bir dizede ararsam hiçbir şey döndürülmez.

ör ... searchString = "100 My Town"

'100' bir giriş çalışır. 'Benim' in bir girişi yok!

Hata ya da görüntülenmiyor.

Denetleyici:

handleSuggest: function (oEvent) { 
    var sTerm = oEvent.getParameter("suggestValue"); 
    var aFilters = []; 
    if (sTerm) { 
     aFilters.push(new Filter("SearchString", sap.ui.model.FilterOperator.Contains, sTerm)); 
    } 

    oEvent.getSource().getBinding("suggestionItems").filter(aFilters); 

}, 

Görünüm:

<Input    
        id="shopInput" 
        type="Text" 
        placeholder="Enter Shop Number ..." 
        showSuggestion="true" 
        suggest="handleSuggest"  
        suggestionItems="{/SiteSet}" 
        change="validateInput" 
        liveChange="liveChange" 
        valueStateText="Shop Number must be valid" 
        suggestionItemSelected="suggestionItemSelected"> 
        <suggestionItems> 
         <core:Item text="{SearchString}" /> 
        </suggestionItems> 

Herhangi Fikirler?

+0

Başka Operatör kullanmayı deneyin vermedi ait input.suggestions.custom bölümünde burnumun dibinde sağdan çözüm buldum? başlar gibi mi? Sadece Genel işlevsellik çalışıp çalışmadığını kontrol etmek için? – zyrex

+0

Evet. StartsWith iyidir. Ayrıca, SAP hizmetinden doğru JSON değerini döndürür ... –

cevap

0

Görebildiğim kadarıyla, kimliğini Öneri öğesinde ayarlamanıza olanak tanıyorsunuz. Filtreniz SiteId'de devam eder, ancak Öneri'niz yalnızca SearchString'e bağlanır.

Bu yardımcı olacaktır:

<suggestionItems> 
     <core:Item key="{SiteId}" text="{SearchString}" /> 
</suggestionItems> 
+0

Şimdi orijinal gönderiyi düzeltiyorum. SiteId'de arama yapıyorum, SearchString'de arama yapıyorum. Ancak SiteId, SearchString değil, oData'daki anahtardır. Öğe anahtarını "SiteId" (yukarıda) ekledim ama şanssızım –