wicket:下拉选择

wicket:下拉选择,wicket,Wicket,我有两个使用相同模型的下拉列表,并将值设置到其中。Dropdown1将始终在屏幕上可见,Dropdown2仅在Dropdown1中选择的一个特定选项中可见。我正在根据下拉列表中的选择对数据库进行查询 但是当我先有两个下拉列表,然后隐藏第二个下拉列表时,值已经设置,但是下拉列表2在我的模型中仍然可用,并且使我的查询获取不正确的数据 有人能给我一个主意吗,如果dropdown2不可见,如何将属性的值设置为null,而实际上设置了dropdown2 (当使dropdown2不可见时(使用AjaxFor

我有两个使用相同模型的下拉列表,并将值设置到其中。Dropdown1将始终在屏幕上可见,Dropdown2仅在Dropdown1中选择的一个特定选项中可见。我正在根据下拉列表中的选择对数据库进行查询

但是当我先有两个下拉列表,然后隐藏第二个下拉列表时,值已经设置,但是下拉列表2在我的模型中仍然可用,并且使我的查询获取不正确的数据

有人能给我一个主意吗,如果dropdown2不可见,如何将属性的值设置为null,而实际上设置了dropdown2


(当使dropdown2不可见时(使用AjaxFormComponentupdateBehavior),我试图将ModelObject设置为null,但当我使dropdown2再次可见时,它返回null,即使我在其中进行了任何选择)

您使用的是LoadableDetachableModel吗?尝试在setHide事件上显式地从该下拉列表中分离模型。不过我没有试过。

dropdown2附带的型号是什么?如果它是PropertyModel,只需将属性设置为null。是否也禁用隐藏下拉列表
setVisible()
setEnabled()
是两件不同的事情。如果您发布一些相关的代码,以便我们可以看到您的下拉列表和您的模型之间的关系,这将更容易回答。同意上面的观点。需要看一些代码来回答这个问题。