如何打开和关闭wiQuery对话框?

时间:2011-11-16 17:36:39

标签: java wicket wiquery

我尝试wiQuery以确定它是否符合我的需求,但我遇到了非常基本的问题。请考虑以下内容,我尝试使用其open()close()方法控制对话框何时打开和关闭:

HTML:

<input type="submit" wicket:id="open" value="Open dialog"/>    
<div wicket:id="dialog">    
    <input type="submit" wicket:id="close" value="Close"/>    
</div>

爪哇:

final Dialog dialog = new Dialog("dialog");

add(new Link("open") {
    @Override
    public void onClick() {
        dialog.open();
    }
});

dialog.add(new Link("close") {
    @Override
    public void onClick() {
        dialog.close();
    }   
});

add(dialog);

事情是,上述情况并不奏效。

我实际打开对话框的唯一方法是&amp; amp;从我的代码关闭是通过使用true或false调用 setAutoOpen(),但似乎很奇怪这是唯一的方法。 (该方法的Javadoc说&#34;设置是否在页面加载后自动打开此窗口。&#34;因此显然保留用于其他目的。)

在代码中动态打开和关闭wiQuery对话框的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

我一直在使用过去两周,我遇到了类似的问题。尝试以这种方式使用AjaxLink:

AjaxLink openingLink = new AjaxLink("open")
{

  @Override
  public void onClick(AjaxRequestTarget target)
  {
    // Do something with model
    target.addComponent(content);
    dialog.open(target);
  }

};