How to calculating the Number of Days Between Any Two Dates primeface calendar -
i want calculate number of days between 2 dates using primefaces p:calendar script.
<script> var calculate = function() { var = document.getelementbyid("from").value; var fromdate = from.slice(3, 5); fromdate = parseint(fromdate); var frommonth = from.slice(0, 2); frommonth = parseint(frommonth); var fromyear = from.slice(6, 10); fromyear = parseint(fromyear); var = document.getelementbyid("to").value; var todate = to.slice(3, 5); todate = parseint(todate); var tomonth = to.slice(0, 2); tomonth = parseint(tomonth); var toyear = to.slice(6, 10); toyear = parseint(toyear); var oneday = 24*60*60*1000; var firstdate = new date(fromyear,frommonth,fromdate); var seconddate = new date(toyear,tomonth,todate); var diffdays = math.round(math.abs((firstdate.gettime()- seconddate.gettime())/(oneday))); if (diffdays) document.getelementbyid("result").innerhtml=diffdays; } </script> primeface using p:calendar
<p:calendar id="from" onselect="calculate();" onkeyup="calculate();" /> <p:calendar id="to" onselect="calculate();" onkeyup="calculate();" /> <h:outputtext id="result" /> any advices calculate 2 dates remaining day?
use managedbean,primefaces date select ajax event , write java code this.
xhtml page
<p:calendar id="datestart" value="#{managedbean.datestart}" > <p:ajax event="dateselect" listener="#{managedbean.datediff}" /> </p:calendar> <p:calendar id="dateend" value="#{managedbean.dateend}"> <p:ajax event="dateselect" listener="#{managedbean.datediff}" /> </p:calendar> <p:inputtext id="datediffvalue" value="#{managedbean.datediffvalue}" /> java
private java.util.date datestart; private java.util.date dateend; private string datediffvalue; //{getter , setter} public void datediff(selectevent event) { if(datestart!=null && dateend!=null) { //hh converts hr in 24 hours format (0-23), day calculation simpledateformat format = new simpledateformat("mm/dd/yyyy hh:mm:ss"); date d1 = null; date d2 = null; seek { d1 = format.parse(datestart); d2 = format.parse(dateend); //in milliseconds long diff = d2.gettime() - d1.gettime(); long diffseconds = diff / 1000 % 60; long diffminutes = diff / (60 * 1000) % 60; long diffhours = diff / (60 * 60 * 1000) % 24; long diffdays = diff / (24 * 60 * 60 * 1000); datediffvalue=diffdays+"-"+diffhours+":"+diffminutes+":"+diffseconds; } grab (exception e) { e.printstacktrace(); } } } primefaces calendar
No comments:
Post a Comment