`

wicket中DropDownChoice的使用及取值

 
阅读更多


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jp.co.infomart.foods.common.admin.page.BasePage;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.model.PropertyModel;

/**
*
* @author admin
*/
public class Test_DropDownChoice  extends BasePage {
        private Form form;
        private static List SITES = new ArrayList();
        private static Map NAMES = new HashMap();
        private DropDownModel1 ddModel;
        static{
        SITES.add("http://www.sina.com.cn");
        SITES.add("http://www.sohu.com");
        SITES.add("http://www.163.com");   
       
        NAMES.put("http://www.sina.com.cn", "新浪");                  //显示汉字
        NAMES.put("http://www.sohu.com", "搜虎");
        NAMES.put("http://www.163.com", "网易");   
        }
       
        IChoiceRenderer renderer = new    ChoiceRenderer() {                        //使用这个接口来显示上面的文字
        public    Object getDisplayValue(Object object) {
        return    NAMES.get(object);
        }
        };
       
        public Test_DropDownChoice(){
            super();
        form = new Form("myForm");
        this.add(form);
        ddModel = new DropDownModel1();
        DropDownChoice siteChoice = new DropDownChoice("sites",new PropertyModel(ddModel,"choList"),SITES,renderer);
        form.add(siteChoice);
        siteChoice.setRequired(true);
        siteChoice.setNullValid(true);
        siteChoice.setDefaultModelObject(ddModel.getChoList());
        AjaxButton ajaxButton = new AjaxButton("ajaxButton") {

            @Override
            protected void onSubmit(AjaxRequestTarget art, Form<?> form) {
               System.out.println(ddModel.getChoList());
            }

            @Override
            protected void onError(AjaxRequestTarget art, Form<?> form) {
                throw new UnsupportedOperationException("Not supported yet.");
            }
        };
        form.add(ajaxButton);
        }
}



<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" onUnload="fCloseWin()">
    <form wicket:id="myForm">
        <select wicket:id="sites"></select>
        <input type="submit" wicket:id="ajaxButton"/>
    </form>
</body>
</html>



<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" onUnload="fCloseWin()">
    <form wicket:id="myForm">
        <select wicket:id="sites"></select>
        <input type="submit" wicket:id="ajaxButton"/>
    </form>
</body>
</html>

分享到:
评论

相关推荐

    wicket常用控件使用方法

    本篇文章将详细介绍Wicket中常用的几种控件及其使用方法。 #### 二、基本概念 在深入探讨Wicket控件之前,我们需要了解几个基础概念: - **Model**:模型是Wicket框架的核心组成部分之一,用于存储控件的数据。它...

    wicket7教程

    最后,Wicket的表单处理细节中涵盖了表单的基本概念,包括表单的定义、组件如DropDownChoice的使用、模型链、可分离模型等高级特性。Wicket模型的使用鼓励开发者使用模型而非直接操作数据,这样可以增加代码的可维护...

    wicket1.4.7中的jar包

    9. **wicket-guice.jar**:如果项目中使用了Google Guice作为依赖注入框架,这个jar包提供了与Guice的集成。 10. **wicket-spring.jar**:如果项目使用Spring框架,这个jar包提供了Wicket与Spring的集成,使得可以...

    wicket例子和开发指南

    Wicket是一个开源的Java Web应用程序框架,它提供了一种组件化的开发方式,...通过阅读开发指南并亲手运行这些示例,你将能够深入理解Wicket的工作原理,熟练掌握其开发技巧,从而在实际项目中更高效地使用Wicket框架。

    Wicket中文开发指南

    首先,Wicket允许开发者直接在页面上使用Unicode编码,这意味着你可以直接在HTML中使用中文字符,无需额外的编码转换。其次,Wicket支持i18n(国际化),你可以创建资源文件来管理不同语言的文本,包括中文。资源...

    Wicket 8.X开发文档(中文翻译+英文原版)

    在我们的页面/面板中使用存根标记 6.8。如何仅渲染组件主体 6.9。用wicket隐藏装饰元素:enclosure标签 6.10。使用Border包围现有标记 6.11。摘要 7.组件生命周期 7.1。组件的生命周期阶段 7.2。组件生命周期的钩子...

    Wicket.pdf(Wicket开发指南)

    - **HTML 和业务逻辑分离:** Wicket 允许开发者使用标准 HTML 来构建界面,而将复杂的业务逻辑封装在 Java 类中。 - **框架特点:** - **低学习曲线:** 相比其他框架,Wicket 提供了一个更直观的 API 和简洁的...

    wicket的tree的简单实例

    在本文中,我们将深入探讨Wicket框架中关于Tree组件的简单使用方法,这对于初学者来说是一份极好的学习资源。Wicket是一个强大的Java Web应用程序框架,它提供了丰富的组件库,其中包括用于显示层次结构数据的Tree...

    Wicket 入门

    本文将详细介绍如何在 Eclipse 中使用 Maven 创建一个 Wicket 项目,以及运行和调试的基本步骤。 #### 一、Wicket 入门概述 Apache Wicket 是一款开源的 Java Web 开发框架,它的设计目标是使 Java 开发者能够像...

    apacke-wicket-mvn编译

    使用这个版本,开发者可以了解和学习Wicket 6.x系列的特性和使用方法,同时也可以直接在项目中引用这些库文件进行开发。 总结来说,这个压缩包提供了一个使用Apache Maven构建的Apache Wicket项目,版本为6.16.0。...

    wicket指南

    1. **创建页面类**:在Wicket中,每个页面都有一个对应的Java类,类中定义了页面的组件和行为。 2. **绑定HTML模板**:页面类与HTML模板通过`@MountPath`注解或`WebPage`的构造函数关联。 3. **组件定义**:使用`add...

    wicket_mvn库

    在 Wicket 开发中,常见的 Maven 插件包括 Wicket-Tester(用于单元测试 Wicket 组件)和 Wicket-Eclipse-Plugin(Eclipse IDE 的插件,提供代码提示和调试支持)。 6. **mvn_tmp 文件**: 这个文件名可能是临时文件...

    wicket简单实例

    这是一个常见的Web应用示例,它展示了如何使用Wicket创建一个留言簿。用户可以通过表单提交留言,而这些留言会存储在服务器端并显示在页面上。这涵盖了Wicket的表单处理和数据持久化概念。 6. **Wicket_include**...

    wicket 官方JAVA教程

    开发Wicket应用可以使用Eclipse、IntelliJ IDEA等主流IDE,它们通常都有对应的Wicket插件,提供代码提示、调试等便利功能。 10. **学习资源** 如链接所示,ITEYE博客上有关于Wicket的教程,这是学习Wicket的一个...

    wicket国际化例子

    在本文中,我们将深入探讨Wicket框架中的国际化(i18n)实现,以及如何使用`wicket:message`和`StringResourceModel`等工具来读取`.properties`资源文件。Wicket是一个流行的Java web应用程序框架,它提供了强大的...

    wicket的helloworld

    2. **添加Wicket依赖**:在`pom.xml`(如果你使用Maven)或`build.gradle`(如果你使用Gradle)中添加Wicket 1.4的依赖。 **三、编写HelloWorld页面** 1. **创建页面类**:在`com.example.wicket`包下创建一个名为`...

    wicket开发指南 pdf

    1. **组件层次结构**:在Wicket中,页面由一组组件构成,组件之间可以嵌套形成树状结构。每个组件都有自己的标识ID,这使得在服务器端和客户端之间同步数据变得简单。 2. **组件生命周期**:Wicket组件有三个主要的...

    apache-wicket

    Wicket has been around since 2004 and it has been an Apache project since 2007. During these years it has proved to be a solid and valuable solution for building enterprise web applications. Wicket ...

Global site tag (gtag.js) - Google Analytics