gpt4 book ai didi

java - 如何使用 AJAX 更新 Wicket DataView?

转载 作者:行者123 更新时间:2023-12-02 08:25:42 27 4
gpt4 key购买 nike

我需要按 Wicket DataView 中显示的 PsDoctrans 用户列表进行 AJAX 完全过滤。

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);
}
};

提交后,没有任何变化。该程序显示一些数据,但没有过滤。如何进行过滤?

最佳答案

我使用与此类似的结构,所以它应该可以工作。

你真的在回调中创建了一个新的“dp”对象吗?您应该简单地更改数据提供程序的状态 - 组件应该如何获取更改后的提供程序。

    @Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form)
{
String value=(String)txtName.getModelObject();
--> dp.setName(value);
target.addComponent(wmc);
}

关于java - 如何使用 AJAX 更新 Wicket DataView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4561045/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com