2012-07-28 75 views
1

当我在我的primefaces数据表中选择一行时,高行,但是选择事件没有被调用,并且选定的行数据不会被调用。另外我注意到我的eclipse调试器似乎只与PrimeFaces挂起,其他人注意到这一点?以下是我的.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:ui="http://java.sun.com/jsf/facelets" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:f="http://java.sun.com/jsf/core" 
     xmlns:p="http://primefaces.org/ui" 
    > 
<h:head> 
    <h:outputStylesheet library="css" name="table-style.css" /> 
</h:head> 

<h:body> 
<center> 

<p:dataTable var="user" value="#{customer.getCustomerList()}" 
     selection="#{customer.selectedCustomer}" selectionMode="single" 
     rowSelectListener="#{custmoer.onUserSelect}" onRowSelectUpdate="userUpdateForm" 
      onRowUnselectUpdate="userUpdateForm" 
     paginator="true" rows="5" rowKey="#{user.customerID}" > 

      <p:column> 
       <f:facet name="header"> 
        <h:outputText value="Id" /> 
       </f:facet> 
       <h:outputText value="#{user.customerID}" /> 
      </p:column> 

      <p:column > 

      <f:facet name="header"> 

       <h:outputText value="Name" /> 

      </f:facet> 

      <h:outputText value="#{user.name}" /> 

      </p:column> 
      <p:column > 

      <f:facet name="header"> 

       <h:outputText value="Address" /> 

      </f:facet> 

      <h:outputText value="#{user.address}" /> 

      </p:column> 

    </p:dataTable> 

    <p:inputText id="userUpdateForm" value="#{customer.selectedCustomer.name}" /> 
    </h:form> 
    </center> 
</h:body> 

回答

0

似乎问题是IE9。问题随着Firefox消失。

0

您onXXX属性绑定到不透明的字符串,当他们应该是必然的JavaScript片段(一个方法调用或执行一些代码片段)。我猜javascript是抛出一个异常,并没有得到发送到服务器,因为在浏览器中执行停止。

+0

好的,你能举一个例子吗? – Dave 2012-07-28 23:46:55

0

<p:datatable>放入<h:form>组件。

可能这只是一个缺失<h:form>开始标记在您的文章(包括</h:form>结束标记)。但忘记将数据发布组件包装到<h:form>是导致您描述的症状的常见错误。