<raptor-taglib> <tlib-version>1.0</tlib-version> <uri>cool</uri> <tag name="form" renderer="cool/FormTag" dynamic-attributes="true"> </tag> </raptor-taglib>
define( 'cool/FormTag', function(require) { var templating = require('raptor/templating');
return { render: function(input, context) { var hiddenFields = [ {name: 'firstname', value: 'hidValue'} ]; templating.render( 'cool/Form.rhtml', { dynamicAttributes: input.dynamicAttributes, invokeBody: input.invokeBody, hiddenFields: hiddenFields }, context); } }; });
<c:template xmlns:c="core" name="cool/Form" params="dynamicAttributes,invokeBody,hiddenFields"> <form c:attrs="dynamicAttributes"> <!-- Include the dynamic attributes --> <!-- Render the nested body content --> <c:invoke function="invokeBody()" c:if="invokeBody"/>
<!-- Render out the hidden fields --> <input type="hidden" name="$hiddenField.name" value="$hiddenField.value" c:for="hiddenField in hiddenFields"/> </form>
</c:template>
<!-- Input template: -->
<cool:form name="my-form" action="/handle-submit" method="get">
First name: <input type="text" name="firstname"/>
</cool:form>
<!-- Output HTML --><form name="my-form" action="/handle-submit" method="get">
First name: <input type="text" name="firstname"> <input type="hidden" name="firstname" value="hidValue"></form>
First name: <input type="text" name="firstname"><input type="hidden" name="firstname" value="hidValue"></form>
I hope that helps.Thanks,Patrick
On Monday, August 19, 2013 2:26:40 PM UTC-6, darkhan kubigenov wrote: