wicket框架下显示提示窗

Html页面:

<form wicket:id="check">
<button wicket:id="linkSure" style="width:auto" > </button>
</form>
<div wicket:id="message"></div>

java代码:

public class Demo{

    //创建提示窗口,根据用户自定义情况弹出    
    private ModalWindow message;
    //定义表单控件
    private Form form;
    //定义点击按钮
    private AjaxLink linkSure;

    public Demo(){

        form=new Form("check");
        this.add(form);
        linkSure=createLink("linkSure");
        form.add("linkSure");

        message = new ModalWindow("message");
        message.setInitialHeight(100);
        message.setInitialWidth(300);
        //"cost.costMessagePrompt"为国际化文件,也就是你的提示窗表头文字
        message.setTitle(new ResourceModel("cost.costMessagePrompt"));
        //加载到页面
        add(message);
   }

//这是你自己的方法,在这里你用来判断是否弹出提示框,也就是你的提示窗使用的地方
private AjaxLink createLink(String id){
     AjaxLink link= new AjaxLink(id) {
         @Override
         public void onClick(AjaxRequestTarget ajaxRequestTarget) {

          if(条件满足,弹出提示框){
         //生成提示窗的内容Model,"projectError.input"同样是国际化文件,是提示框的主体内容
         StringResourceModel model = new StringResourceModel("projectError.input", this, null);
         //调用方法,弹出提示框
         messagePrompt(model, ajaxRequestTarget, message);         
                    }
          }
     };
 return link;
}

//提示框弹出方法,呈现在页面上
public void messagePrompt(final StringResourceModel finalModel, AjaxRequestTarget target, ModalWindow message){
        message.setPageCreator(new ModalWindow.PageCreator(){
            @Override
            public org.apache.wicket.Page createPage(){
                //引用MessageMW类,修饰finalModel,返回对象使用
                return new MessageMW(finalModel);
            }
        });
        //在前台展示
        message.show(target);
    }   
}

附属工具类MessageMW

import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.StringResourceModel;

public class MessageMW extends WebPage {
    public MessageMW(StringResourceModel model) {
        super();
        this.add(new Label("messageLabel", model));
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值