2011-08-12 13 views
5

Birkaç alana sahip bir Dojo DataGrid'im var. Şu anda şöyle, bir defada bir arama alanına sorgu ayarlıyorum:Bir dojo datagrid'inin tüm alanlarını aramak için sorguyu ayarla

grid.setQuery({name:"Bob"}, {ignoreCase:true}); 

Ancak sorgu kerede tüm alanlarda arama istiyoruz. Örneğin, "isim", "arkadaş", "aile" başlıklı üç alanım olduğunu varsayalım. Şöyle diyelim ki, üç alanda herhangi birinde "Bob" yazan satırları ızgarada göstermek istiyorum. Bunu üç ayrı sorgulamadan yapmayı nasıl başarabilirim?

Herhangi bir yardım için teşekkür ederiz.

cevap

2

Mağazanız ItemFileReadStore veya QueryReadStore mu?

ItemFileReadStore Eğer AndOrReadStore Aksi http://dojotoolkit.org/reference-guide/dojox/data/AndOrReadStore.html

kullanmak mümkün olabilir, sınırlı getirme mağaza için benim en iyi öneri mağaza bir yaptığında öyle ki filtreleme seçeneklerini destekleyecek şekilde arka uç kodunu ayarlamak olacaktır POST (veya GET), aramak istediğiniz bir dizi alanı ayrıştırır ve sonuç kümesi buna göre döndürülür.

Sen iş ihtiyaçlarına göre paradigma ayarlamak zorunda kalacak

start 0 
count 25 
columnsToQuery : ["name","friend","family"] //or perhaps a CSV string will do 
columnOperator : "AND" 
columnValue : "Bob" 

gibi bir şey görüyorum ama istiyorum sürece sunucu düzgün filtreleme girişlerine bu yaklaşım temelinde sonuç kümesini döndürebilir olarak çalışacak.

çağrı böyle bir talep olacağını oluşturmak için

grid.setQuery({ 
    columnsToQuery : ["name","friend","family"], 
    columnOperator : "AND", 
    columnValue : "Bob" 
}); 
İlgili konular