To generate a list of years in descending order from current year back to 1950:
<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
......
<jsp:useBean id="now" class="java.util.Date" />
<fmt:formatDate var="year" value="${now}" pattern="yyyy" />
<xforms:select1 ref=".">
<c:forEach var="i" begin="1950" end="${year}" step="1" varStatus="loop">
<xforms:item>
<xforms:label><c:out value="${loop.end - i + loop.begin}" /></xforms:label>
<xforms:value><c:out value="${loop.end - i + loop.begin}" /></xforms:value>
</xforms:item>
</c:forEach>
</xforms:select1>
Showing posts with label xforms. Show all posts
Showing posts with label xforms. Show all posts
Thursday, 28 June 2012
Wednesday, 27 June 2012
Strip out commas and full stops from an input box in xform
To normalize data entered by user, e.g. strip out commas and full stops from an input box in xform, no matter how many commas / full stops are added in the end:
<xforms:input ref="xx">
<xforms:label>label</xforms:label>
<xforms:action ev:event="xforms-value-changed">
<xforms:setvalue ref=".[substring(.,string-length(.))='.']"
value="substring(.,1,string-length(.)-1)"/>
<xforms:setvalue ref=".[substring(.,string-length(.))=',']"
value="substring(.,1,string-length(.)-1)"/>
</xforms:action>
</xforms:input>
NB: if you want to replace the value by a fixed string, it must be in a pair of single quotes, e.g.
<xforms:setvalue ref=".[substring(.,string-length(.))=',']"
value="'NEW TEXT'"/>
<xforms:input ref="xx">
<xforms:label>label</xforms:label>
<xforms:action ev:event="xforms-value-changed">
<xforms:setvalue ref=".[substring(.,string-length(.))='.']"
value="substring(.,1,string-length(.)-1)"/>
<xforms:setvalue ref=".[substring(.,string-length(.))=',']"
value="substring(.,1,string-length(.)-1)"/>
</xforms:action>
</xforms:input>
NB: if you want to replace the value by a fixed string, it must be in a pair of single quotes, e.g.
<xforms:setvalue ref=".[substring(.,string-length(.))=',']"
value="'NEW TEXT'"/>
Subscribe to:
Posts (Atom)