0

ZK 5.0.8(MVCアプローチ)を使用したbandBoxがあり、後でレコードを表示するリストボックスがありますが、bandBox eventListener[event]でonChangingの結果をフィルタリングしますが、pageSizeとページングがリストボックスの結果と同期していないことがありますときどき IT のレコードではない (0 件の一致) まだ表示されている

 1/ 13[ 1 - 4 / 51]

どうしてこれなの??誰かが私にヒントを与えることができますか?ここに私の関連コードがあります

<bandbox id="bandforcode" autodrop="true" width="270px">    
<listbox id="listBoxForCode" height="250px" width="300px" mold="paging" autopaging="true">
 public void setListBoxForBandBoxFromDB(Listbox box,String ref)//Filtering
 {     
   final ArrayList<Student>students = new ArrayList<Student>(manager.getListForStudentsByRefBandBox(ref));     
   box.getItems().removeAll(box.getItems());       
   BindingListModelList model = new BindingListModelList(students,false);
   box.setModel(model);
}
box.addEventListener("onChanging",new EventListener()//Listener
{
    public void onEvent(Event event) throws Exception
    {                       
    final Bandbox band = (Bandbox)event.getTarget();
    final org.zkoss.zk.ui.event.InputEvent inputEvent=(org.zkoss.zk.ui.event.InputEvent)event;              
    final String initialText = inputEvent.getValue();                                  

setListBoxForBandBoxFromDB((Listbox)band.getFirstChild().getFirstChild(),initialText);                          
     }
});         

下の画像を見てください。

スクリーンショット

4

1 に答える 1

0

問題はこれかもしれません

box.getItems().removeAll(box.getItems()); 

Itemsを使用する場合は編集しないでくださいModel

に変更します

box.getModel().clear(); 

とにかく新しいモデルを設定するので、行を削除するだけです。

于 2013-04-27T02:24:14.033 に答える