我正在使用JSF 2.0和Bootsfaces 0.9.1。我有一个基于数据库用户数据的dataTable。每列还包含几个用于修改数据的按钮。
当我点击铅笔(编辑用户)时,会显示一个模态框,我想在其中修改相应的数据。
由于我想编辑数据,我希望当前信息自动填入文本框。我怎么能这样做?
这是xhtml来源:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:b="http://bootsfaces.net/ui"
xmlns:p="http://xmlns.jcp.org/jsf/passthrough">
<h:head>
</h:head>
<h:body>
<b:dataTable value="#{membersController.users}"
var="user"
id="users-table"
page-length="25"
row-highlight="true">
<b:dataTableColumn label="Id" value="#{user.userId}"/>
<b:dataTableColumn label="User name" value="#{user.userName}"/>
<h:column>
<f:facet name="header">
<h:outputText value="Operations"/>
</f:facet>
<b:button style="padding: 0 4px;" iconAwesome="pencil" look="link" p:data-target="#userEditModal" p:data-toggle="modal"
onclick="return false;"/>
<b:button style="padding: 0 4px;" iconAwesome="trash" look="link" p:data-target="#userEditModal" p:data-toggle="modal"
onclick="return false;"/>
</h:column>
</b:dataTable>
<b:modal id="userEditModal" title="Modal Example" styleClass="modalPseudoClass">
<h:panelGrid columns="2" cellpadding="5">
<h:outputText value="User name:"/>
<b:inputText>
</b:inputText>
</h:panelGrid>
<f:facet name="footer">
<b:button value="close" dismiss="modal" onclick="return false;"/>
<b:button value="Ok" look="primary" dismiss="modal" onclick="return false;"/>
</f:facet>
</b:modal>
</h:body>
</html>
答案 0 :(得分:2)
这是BootsFaces 0.9.1及以下版本中的错误。我在BootsFaces-0.9.2-SNAPSHOT中解决了这个问题。请注意,这不是生产就绪版本,而是开发人员快照。请参阅this entry on how to get the snapshot。
我已经记录了如何在数据表in our developer showcase中使用按钮。向下滚动到最新的示例。该示例使用一种单元格内编辑而不是模态对话框,但我相信您将能够适应该示例。如果没有,请不要犹豫。
报告了原始错误here。如果您认为我们的错误修复仍然不完整,请随时在我们的错误跟踪器上报告错误。提前谢谢!