【发布时间】:2010-12-30 08:15:57
【问题描述】:
我需要按 PsDoctrans 的用户列表进行 AJAX 完全过滤,该列表显示在 Wicket DataView 中。
final TextField txtName= new TextField("user");
final PSDocDP dp = new PSDocDP("username");
DataView<PsDoctrans> dataView = new DataView<PsDoctrans>("unproc", dp)
{
@Override
protected void populateItem(final Item<PsDoctrans> item)
...
};
PSDocDP 是:
public class PSDocDP extends SortableDataProvider<PsDoctrans>
{...}
final WebMarkupContainer wmc = new WebMarkupContainer("container");
wmc.add(dataView);
wmc.setOutputMarkupId(true);
AjaxButton butFind=new AjaxButton("find"){
@Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form)
{
String value=(String)txtName.getModelObject();
dp = new PSDocDP(value);
target.addComponent(wmc);
}
};
提交后,没有任何变化。该程序显示了一些数据,但它没有过滤。如何进行过滤?
【问题讨论】:
-
是的,它是最终的,我已经简化了代码以便更容易理解
-
PSDocDP 实现是什么样的?还有@Nishant:是的,它应该,编译器应该对此出错。
-
String value=(String)txtName.getModelObject();你得到正确的价值了吗?我怀疑模型可能什么也没返回。 -
我试过 dp = new PSDocDP(null);但什么都没有改变