Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PrimeFaces<;p:cellEditor>;不改变变量的值_Primefaces_Xhtml_Jsf 2.2_Tablecelleditor - Fatal编程技术网

PrimeFaces<;p:cellEditor>;不改变变量的值

PrimeFaces<;p:cellEditor>;不改变变量的值,primefaces,xhtml,jsf-2.2,tablecelleditor,Primefaces,Xhtml,Jsf 2.2,Tablecelleditor,我做了一些研究,没有找到任何能直接解决我所遇到问题的方法 我有一个可编辑的DataTable列(按单元格),我可以单击单元格,在“单元格编辑器”框中输入一个新数字,但当我点击单元格编辑器时,它会关闭,但不会保存新值(如果只单击“关闭”而不点击“回车”,也会发生同样的情况) 下面是代码片段 <h:form> <c:forEach items="#{extensionsBean.getPhases()}" var="phase"> <p:fie

我做了一些研究,没有找到任何能直接解决我所遇到问题的方法

我有一个可编辑的DataTable列(按单元格),我可以单击单元格,在“单元格编辑器”框中输入一个新数字,但当我点击单元格编辑器时,它会关闭,但不会保存新值(如果只单击“关闭”而不点击“回车”,也会发生同样的情况)

下面是代码片段

<h:form>
    <c:forEach items="#{extensionsBean.getPhases()}"  var="phase">
        <p:fieldset legend="#{phase.getPhaseName()}">
            <p:dataTable value="#{extensionsBean.getActivities(phase)}" var="activity" editable="true" editMode="cell">
                <p:column>
                    <f:facet name="header">
                        <h:outputText value="Actual Hours"/>
                    </f:facet>
                        <p:cellEditor>
                              <f:facet name="output">
                                    <h:outputText value="#{activity.getEstimateDetail().actualHours}"/>
                              </f:facet>
                              <f:facet name="input">
                                  <h:inputText value="#{activity.getEstimateDetail().actualHours}" />
                              </f:facet>
                        </p:cellEditor>
                   //the rest of the closing tags are present

//其余的结束标记都存在

任何建议都很好!作为记录,我在不同的xhtml页面中有完全相同的设置,我能够毫无问题地编辑每个单元格。我不知道是什么原因让这件事困扰着我

添加Ajax事件单元格编辑并存储值

添加Ajax事件单元格编辑并存储值

添加Ajax事件单元格编辑并将值保存到哪里。 代码在我的项目下面

Xhtml页面(Primefaces):


添加ajax事件celledit,并将可以保存的值保存到哪里。 代码在我的项目下面

Xhtml页面(Primefaces):


你说的存储值到底是什么意思?你能提供一个例子吗?参见链接例如:你存储值的确切含义是什么?你能提供一个例子吗?参见链接,例如:
<p:dataTable var="my" value="#{java.custom_info}" editMode="cell" editable="true" style="font-size: 12px">

<p:ajax event="cellEdit" listener="#{java.custom_detail}"/>
<p:column style="background: white">
    <h:outputText value="First Name"/>
</p:column>
<p:column style="background: white">
  <p:cellEditor>
      <f:facet name="output"> <h:outputText value="#{my.first}"/>   </f:facet>
      <f:facet name="input"><p:inputText value="#{my.first}" placeholder="Enter First Name" style="width:93%"/></f:facet>
  </p:cellEditor>
</p:column>

</p:dataTable>
public void custom_detail(CellEditEvent event){
    String old_str = (String) event.getOldValue();
    String first_name = (String) event.getNewValue();
    System.out.println("update method reached..."+first_name);
    FacesContext fc = FacesContext.getCurrentInstance();
    HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
    Query db = new Query();
    Customer bean = new Customer();
    if(session!=null){
        if(((String)session.getAttribute("login"))!=null){
            Calendar currentDate=Calendar.getInstance();
            SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String datenow=format.format(currentDate.getTime());
            session.setAttribute("firstname", first_name);
            session.setAttribute("modified_date",datenow);
            bean.setFirst(first_name);
            bean.setUsrid((String)session.getAttribute("user"));
            bean.setUsr_modified(datenow);
            db.update_personalinfo(bean);   
      }
    } 
}