本文概述
它是一个按钮, 在覆盖中显示默认命令和其他命令。它用于提供多个命令。 <p:splitButton>组件用于在JSF应用程序中创建splitButton。下表包含此组件的重要属性。
SplitButton属性
Attribute | Default value | Type | Description |
---|---|---|---|
id | null | String | 它是组件的唯一标识符。 |
value | null | String | 用于设置按钮的标签。 |
action | null | MethodE xpr/String | 单击按钮时将处理方法表达式或字符串结果。 |
actionListener | null | 方法 | 用于设置动作侦听器。 |
type | submit | String | 它设置按钮的行为。 |
ajax | true | Boolean | 它指定提交模式, 当设置为true(默认)时, 将使用Ajax进行提交。 |
Async | false | Boolean | 设置为true时, ajax请求不会排队。 |
process | null | String | 它将组件设置为部分处理而不是整个视图。 |
Update | null | String | 它将组件设置为使用ajax更新。 |
onstart | null | String | 它用于在ajax请求开始之前执行客户端脚本。 |
global | true | boolean | 它定义是否触发ajaxStatus。 |
delay | null | String | 用于设置延迟时间。 |
timeout | 0 | Integer | 它用于设置ajax请求的超时时间(以毫秒为单位)。 |
style | null | String | 用于设置按钮元素的内联CSS。 |
例子
在下面的示例中, 我们正在实现<p:splitButton>组件。本示例包含以下文件。
JSF文件
// splitButton.xhtml
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>SplitButton</title>
</h:head>
<h:body>
<h:form>
<p:growl id="messages" />
<p:splitButton value="Save" actionListener="#{splitButton.save}" update="messages" icon="ui-icon-disk">
<p:menuitem value="Update" actionListener="#{splitButton.update}" update="messages" icon="ui-icon-arrowrefresh-1-w" />
<p:menuitem value="Delete" actionListener="#{splitButton.delete}" ajax="false" icon="ui-icon-close" />
<p:separator />
<p:menuitem value="Homepage" url="http://www.srcmini02.com" icon="ui-icon-extlink" />
</p:splitButton>
</h:form>
</h:body>
</html>
ManagedBean
// SplitButton.java
package com.srcmini;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
@ManagedBean
public class SplitButton {
public void save(ActionEvent actionEvent) {
addMessage("Data saved");
}
public void update(ActionEvent actionEvent) {
addMessage("Data updated");
}
public void delete(ActionEvent actionEvent) {
addMessage("Data deleted");
}
public void addMessage(String summary) {
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, summary, null);
FacesContext.getCurrentInstance().addMessage(null, message);
}
}
输出
评论前必须登录!
注册