2012-09-14 14 views
5

मेरे पास एक स्क्रॉल करने योग्य डेटा है जब मैं एक नया रिकॉर्ड (डिफ़ॉल्ट दृश्यमान क्षेत्र के बाहर) जोड़ता हूं और डेटा को डेटाटेबल अपडेट करता हूं तो रिकॉर्ड 0 से लोड हो जाता है, जबकि मुझे डेटाटेबल दृश्य की आवश्यकता होती है पुरानी स्थिति।प्राइमफ़ेस डेटा वांछित स्थिति पर पोर्टेबल स्क्रॉलबार

मेरे DataTable कोड

<p:dataTable id="DataTable" value="#{dtMB.selectDataModel}" var="test" scrollable="TRUE" scrollHeight="500" styleClass="day-column2" selectionMode="single" > 
<ui:insert name="TableInsert" > 
     <ui:include src="test.xhtml" /> 
</ui:insert> 
</p:dataTable> 

कमान बटन (एक संवाद के अंदर), जो अद्यतन करता DataTable

<p:commandButton id="saveNew" value="Save" type="submit" process="@parent" onsuccess="addNew.hide()" action="#{dtMB.addNew()}" update=":FORM:usrMsg :FORM:TABView:DataTable"/> 

वर्तमान में मैं देखना क्या जोड़ा गया है वापस n'th रिकॉर्ड करने के लिए स्क्रॉल करने की आवश्यकता या कोई अपडेट करें आदि क्या प्राइमफेस डेटाटेबल में कोई विकल्प है, या मुझे इसके लिए जावास्क्रिप्ट लिखना होगा।

उत्तर

7

मैं निम्नलिखित पोस्ट

primeface datatable scrollbar position

datatable scroll

मेरी कोड

स्क्रिप्ट

function saveScrollPos() { 
var scrollPos = jQuery('#receptionFORM\\:receptionTV\\:scheduleDataTable .ui-datatable-scrollable-body').prop('scrollTop'); 
document.getElementById('receptionFORM:scrollPos').value = scrollPos; 
} 

function autoScroll() { 
var scrollPos = document.getElementById('receptionFORM:scrollPos').value; 
jQuery('#receptionFORM\\:receptionTV\\:scheduleDataTable .ui-datatable-scrollable-body').animate({scrollTop:scrollPos}, scrollPos); 
} 

HiddenInput

का उपयोग कर ऊपर किया
<h:inputHidden id="scrollPos" /> 

datatable पंक्ति के अजाक्स घटना में CommandButton में चयन

onstart="saveScrollPos()" 

नीचे कोड जबकि रिकॉर्ड बचत

oncomplete="autoScroll()" 
+0

एक बग फिक्सिंग में मुझे मदद मिली। हमेशा आभारी :) – Sabarish

संबंधित मुद्दे