[Tapestry4] ResponseBuilder.updateComponent 没法正确更新PropertySelection?
SilverRing
2007-04-26
大家好,最近在看tapestry 4.1的ajax部分,用到了EventListener和ResponseBuilder。我想实现的一个功能是通过一个下拉框A动态加载另一个下拉框B的内容。实现代码类似这样:
@EventListener(targets="A", events="onchange", submitForm ="form") public void selectA(IRequestCycle cycle) { bModel = .... New model for b based on value of A .... cycle.getResponseBuilder().updateComponent("b"); } 可以看到bModel已经更新,但是下拉框B内容还是为空。 请指教! |
|
pppppp
2007-04-27
<span jwcid="b@Any">下拉框b</span>
|
|
SilverRing
2007-05-03
谢谢pppppp的答复。
我为下拉框B定义了一个FieldLabel,这样验证失败的时候,B的label可以显示为红色。没想到正是这个FieldLabel出了问题。按照pppppp的方法若将B和它的FieldLabel一块儿用span包起来,下拉框可以更新,但是render出来的页面格式有问题。只能把FieldLabel去掉,用@Any的span单包住下拉框。 |