福网

ZK AJAX 学习笔记第七天 下拉Listbox

ZK AJAX 学习笔记
——Run Java and JSP on ZK

由于今天一位名为正则表达式的网友提了一个关于下拉listbox的问题,所以写了这篇文章,希望能有所帮助。

打开前面的zk_jsp_java工程,新建listbox文件夹并添加jsp文件listbox_pull.jsp,内容如下:

<%@page language="java" pageEncoding="UTF-8"%>
<html xmlns:x="http://www.zkoss.org/2005/zul">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<title>下拉listbox</title>
</head>
<body>
<x:window id="window" title="下拉listbox" border="normal"
	width="500px" height="200px">
	<x:vbox spacing="10px">
       <x:listbox id="pullListbox" rows="1" mold="select"
       		use="edu.bigc.zk.listbox.ListboxPull">
       </x:listbox>
       <x:button label="更新数据"
       		use="edu.bigc.zk.listbox.ButtonUpdate" />
    </x:vbox>
</x:window>
</body>
</html>

其中的ListboxPullButtonUpdate内容如下:

package edu.bigc.zk.listbox;

import org.zkoss.zul.Listbox;
import org.zkoss.zul.Listitem;

public class ListboxPull extends Listbox {
	private static final long serialVersionUID = 1L;

	public void onCreate() {
		Listbox listbox = (Listbox) this.getSpaceOwner().getFellow("pullListbox");
		for (int i = 0; i < 5; i++) {
			Listitem listitem = new Listitem("option" + i);
			if (i == 0) {
				listitem.setSelected(true);
			}
			listitem.setParent(listbox);
		}
	}
}
package edu.bigc.zk.listbox;

import org.zkoss.zul.Button;
import org.zkoss.zul.Listbox;
import org.zkoss.zul.Listitem;

public class ButtonUpdate extends Button {
	private static final long serialVersionUID = 1L;
	private static int option = 5;

	public void onClick() {
		Listbox listbox = (Listbox) this.getSpaceOwner().getFellow("pullListbox");
		Listitem listitem = new Listitem("option" + option);
		listbox.appendChild(listitem);
		option++;
	}
}

运行的界面如下:

下拉初始数据:

点一次更新数据按钮:

再点一次:

有兴趣的话可以无限次点下去^_^

One thought on “ZK AJAX 学习笔记第七天 下拉Listbox

发表评论

电子邮件地址不会被公开。

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>