1 <div xmlns:ext="http://www.extjs.com" class="body-wrap"><h1>Class <a href="source/Template.html#cls-Ext.Template">Ext.Template</a></h1><table cellspacing="0"><tr><td class="label">Package:</td><td class="hd-info">Ext</td></tr><tr><td class="label">Defined In:</td><td class="hd-info">Template.js, Template-more.js</td></tr><tr><td class="label">Class:</td><td class="hd-info"><a href="source/Template.html#cls-Ext.Template">Template</a></td></tr><tr><td class="label">Subclasses:</td><td class="hd-info"><a href="output/Ext.XTemplate.html" ext:cls="Ext.XTemplate">XTemplate</a></td></tr><tr><td class="label">Extends:</td><td class="hd-info">Object</td></tr></table><div class="description"><p>Represents an HTML fragment template. Templates may be <a href="output/Ext.Template.html#Ext.Template-compile" ext:member="compile" ext:cls="Ext.Template">precompiled</a>
2 for greater performance.</p>
3 <p>For example usage <a href="output/Ext.Template.html#Ext.Template-Template" ext:member="Template" ext:cls="Ext.Template">see the constructor</a>.</p></div><div class="hr"></div><a id="Ext.Template-configs"></a><h2>Config Options</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Config Options</th><th class="msource-header">Defined By</th></tr><tr class="config-row "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-compiled"></a><b><a href="source/Template.html#cfg-Ext.Template-compiled">compiled</a></b> : Boolean<div class="mdesc">Specify <tt>true</tt> to compile the template
4 immediately (see <code><a href="output/Ext.Template.html#Ext.Template-compile" ext:member="compile" ext:cls="Ext.Template">compile</a></code>).
5 Defaults to <tt>false</tt>.</div></td><td class="msource">Template</td></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-disableFormats"></a><b><a href="source/Template-more.html#cfg-Ext.Template-disableFormats">disableFormats</a></b> : Boolean<div class="mdesc"><div class="short">Specify true to disable format
\r
6 functions in the template. If the template does not contain
\r
7 format functions, settin...</div><div class="long">Specify <tt>true</tt> to disable format
\r
8 functions in the template. If the template does not contain
\r
9 <a href="output/Ext.util.Format.html" ext:cls="Ext.util.Format">format functions</a>, setting <code>disableFormats</code>
\r
10 to true will reduce <code><a href="output/Ext.Template.html#Ext.Template-apply" ext:member="apply" ext:cls="Ext.Template">apply</a></code> time. Defaults to <tt>false</tt>.
\r
11 <pre><code><b>var</b> t = <b>new</b> Ext.Template(
\r
12 <em>'<div name=<em>"{id}"</em>>'</em>,
\r
13 <em>'<span class=<em>"{cls}"</em>>{name} {value}</span>'</em>,
\r
14 <em>'</div>'</em>,
\r
16 compiled: true, <i>// <a href="output/Ext.Template.html#Ext.Template-compile" ext:member="compile" ext:cls="Ext.Template">compile</a> immediately
\r</i>
17 disableFormats: true <i>// reduce <code><a href="output/Ext.Template.html#Ext.Template-apply" ext:member="apply" ext:cls="Ext.Template">apply</a></i></code> time since no formatting
\r
21 For a list of available format functions, see <a href="output/Ext.util.Format.html" ext:cls="Ext.util.Format">Ext.util.Format</a>.</div></div></td><td class="msource">Template</td></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-re"></a><b><a href="source/Template.html#cfg-Ext.Template-re">re</a></b> : RegExp<div class="mdesc"><div class="short">The regular expression used to match template variables.
\r
22 Defaults to:re : /\{([\w-]+)\}/g ...</div><div class="long">The regular expression used to match template variables.
23 Defaults to:<pre><code>re : /\{([\w-]+)\}/g <i>// <b>for</b> Ext Core</i>
24 re : /\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g <i>// <b>for</b> Ext JS</i></code></pre></div></div></td><td class="msource">Template</td></tr></tbody></table><a id="Ext.Template-props"></a><h2>Public Properties</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Property</th><th class="msource-header">Defined By</th></tr><tr class="property-row "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-disableFormats"></a><b><a href="source/Template-more.html#prop-Ext.Template-disableFormats">disableFormats</a></b> : Boolean<div class="mdesc">See <code><a href="output/Ext.Template.html#Ext.Template-disableFormats" ext:member="disableFormats" ext:cls="Ext.Template">disableFormats</a></code>.</div></td><td class="msource">Template</td></tr><tr class="property-row "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-re"></a><b><a href="source/Template.html#prop-Ext.Template-re">re</a></b> : RegExp<div class="mdesc">See <code><a href="output/Ext.Template.html#Ext.Template-re" ext:member="re" ext:cls="Ext.Template">re</a></code>.</div></td><td class="msource">Template</td></tr></tbody></table><a id="Ext.Template-methods"></a><h2>Public Methods</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Method</th><th class="msource-header">Defined By</th></tr><tr class="method-row expandable"><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-Template"></a><b><a href="source/Template.html#cls-Ext.Template">Template</a></b>( <code>Mixed config</code> )
\r
25 <div class="mdesc"><div class="short">An instance of this class may be created by passing to the constructor either
\r
26 a single argument, or multiple argument...</div><div class="long">An instance of this class may be created by passing to the constructor either
27 a single argument, or multiple arguments:
28 <div class="mdetail-params"><ul>
29 <li><b>single argument</b> : String/Array
30 <div class="sub-desc">
31 The single argument may be either a String or an Array:<ul>
32 <li><tt>String</tt> : </li><pre><code><b>var</b> t = <b>new</b> Ext.Template(<em>"<div>Hello {0}.</div>"</em>);
33 t.<a href="output/Ext.Template.html#Ext.Template-append" ext:member="append" ext:cls="Ext.Template">append</a>(<em>'some-element'</em>, [<em>'foo'</em>]);</code></pre>
34 <li><tt>Array</tt> : </li>
35 An Array will be combined with <code>join(<em>''</em>)</code>.
36 <pre><code><b>var</b> t = <b>new</b> Ext.Template([
37 <em>'<div name=<em>"{id}"</em>>'</em>,
38 <em>'<span class=<em>"{cls}"</em>>{name:trim} {value:ellipsis(10)}</span>'</em>,
39 <em>'</div>'</em>,
41 t.<a href="output/Ext.Template.html#Ext.Template-compile" ext:member="compile" ext:cls="Ext.Template">compile</a>();
42 t.<a href="output/Ext.Template.html#Ext.Template-append" ext:member="append" ext:cls="Ext.Template">append</a>(<em>'some-element'</em>, {id: <em>'myid'</em>, cls: <em>'myclass'</em>, name: <em>'foo'</em>, value: <em>'bar'</em>});</code></pre>
44 <li><b>multiple arguments</b> : String, Object, Array, ...
45 <div class="sub-desc">
46 Multiple arguments will be combined with <code>join(<em>''</em>)</code>.
47 <pre><code><b>var</b> t = <b>new</b> Ext.Template(
48 <em>'<div name=<em>"{id}"</em>>'</em>,
49 <em>'<span class=<em>"{cls}"</em>>{name} {value}</span>'</em>,
50 <em>'</div>'</em>,
51 <i>// a configuration object:</i>
53 compiled: true, <i>// <a href="output/Ext.Template.html#Ext.Template-compile" ext:member="compile" ext:cls="Ext.Template">compile</a> immediately</i>
54 disableFormats: true <i>// See Notes below.</i>
58 <div class="mdetail-params"><ul>
59 <li>Formatting and <code>disableFormats</code> are not applicable for Ext Core.</li>
60 <li>For a list of available format functions, see <a href="output/Ext.util.Format.html" ext:cls="Ext.util.Format">Ext.util.Format</a>.</li>
61 <li><code>disableFormats</code> reduces <code><a href="output/Ext.Template.html#Ext.Template-apply" ext:member="apply" ext:cls="Ext.Template">apply</a></code> time
62 when no formatting is required.</li>
65 </ul></div><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>config</code> : Mixed<div class="sub-desc"></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-Template.from"></a><b><a href="source/Template.html#method-Ext.Template-Template.from">Template.from</a></b>( <code>String/HTMLElement el</code>, <code>Object config</code> )
\r
67 Ext.Template<div class="mdesc"><div class="short"><static> Creates a template from the passed element's value (display:none textarea, preferred) or innerHTML.</div><div class="long"><static> Creates a template from the passed element's value (<i>display:none</i> textarea, preferred) or innerHTML.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : String/HTMLElement<div class="sub-desc">A DOM element or its id</div></li><li><code>config</code> : Object<div class="sub-desc">A configuration object</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Template</code><div class="sub-desc">The created template</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-append"></a><b><a href="source/Template.html#method-Ext.Template-append">append</a></b>( <code>Mixed el</code>, <code>Object/Array values</code>, <span title="Optional" class="optional">[<code>Boolean returnElement</code>]</span> )
\r
69 HTMLElement/Ext.Element<div class="mdesc"><div class="short">Applies the supplied values to the template and appends
\r
70 the new node(s) to the specified el.
\r
71 For example usage see th...</div><div class="long">Applies the supplied <code>values</code> to the template and appends
72 the new node(s) to the specified <code>el</code>.
73 <p>For example usage <a href="output/Ext.Template.html#Ext.Template-Template" ext:member="Template" ext:cls="Ext.Template">see the constructor</a>.</p><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : Mixed<div class="sub-desc">The context element</div></li><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if the params are numeric (i.e. <code>{0}</code>)
74 or an object (i.e. <code>{foo: <em>'bar'</em>}</code>).</div></li><li><code>returnElement</code> : Boolean<div class="sub-desc">(optional) true to return an Ext.Element (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>HTMLElement/Ext.Element</code><div class="sub-desc">The new node or Element</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-apply"></a><b><a href="source/Template.html#method-Ext.Template-apply">apply</a></b>( <code>Object/Array values</code> )
\r
76 String<div class="mdesc"><div class="short">Alias for applyTemplate
\r
77 Returns an HTML fragment of this template with the specified values applied.</div><div class="long">Alias for <a href="output/Ext.Template.html#Ext.Template-applyTemplate" ext:member="applyTemplate" ext:cls="Ext.Template">applyTemplate</a>
78 Returns an HTML fragment of this template with the specified <code>values</code> applied.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if the params are numeric (i.e. <code>{0}</code>)
79 or an object (i.e. <code>{foo: <em>'bar'</em>}</code>).</div></li></ul><strong>Returns:</strong><ul><li><code>String</code><div class="sub-desc">The HTML fragment</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-insertAfter"></a><b><a href="source/Template.html#method-Ext.Template-insertAfter">insertAfter</a></b>( <code>Mixed el</code>, <code>Object/Array values</code>, <span title="Optional" class="optional">[<code>Boolean returnElement</code>]</span> )
\r
81 HTMLElement/Ext.Element<div class="mdesc"><div class="short">Applies the supplied values to the template and inserts the new node(s) after el.</div><div class="long">Applies the supplied values to the template and inserts the new node(s) after el.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : Mixed<div class="sub-desc">The context element</div></li><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})</div></li><li><code>returnElement</code> : Boolean<div class="sub-desc">(optional) true to return a Ext.Element (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>HTMLElement/Ext.Element</code><div class="sub-desc">The new node or Element</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-insertBefore"></a><b><a href="source/Template.html#method-Ext.Template-insertBefore">insertBefore</a></b>( <code>Mixed el</code>, <code>Object/Array values</code>, <span title="Optional" class="optional">[<code>Boolean returnElement</code>]</span> )
\r
83 HTMLElement/Ext.Element<div class="mdesc"><div class="short">Applies the supplied values to the template and inserts the new node(s) before el.</div><div class="long">Applies the supplied values to the template and inserts the new node(s) before el.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : Mixed<div class="sub-desc">The context element</div></li><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})</div></li><li><code>returnElement</code> : Boolean<div class="sub-desc">(optional) true to return a Ext.Element (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>HTMLElement/Ext.Element</code><div class="sub-desc">The new node or Element</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-insertFirst"></a><b><a href="source/Template.html#method-Ext.Template-insertFirst">insertFirst</a></b>( <code>Mixed el</code>, <code>Object/Array values</code>, <span title="Optional" class="optional">[<code>Boolean returnElement</code>]</span> )
\r
85 HTMLElement/Ext.Element<div class="mdesc"><div class="short">Applies the supplied values to the template and inserts the new node(s) as the first child of el.</div><div class="long">Applies the supplied values to the template and inserts the new node(s) as the first child of el.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : Mixed<div class="sub-desc">The context element</div></li><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})</div></li><li><code>returnElement</code> : Boolean<div class="sub-desc">(optional) true to return a Ext.Element (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>HTMLElement/Ext.Element</code><div class="sub-desc">The new node or Element</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-overwrite"></a><b><a href="source/Template.html#method-Ext.Template-overwrite">overwrite</a></b>( <code>Mixed el</code>, <code>Object/Array values</code>, <span title="Optional" class="optional">[<code>Boolean returnElement</code>]</span> )
\r
87 HTMLElement/Ext.Element<div class="mdesc"><div class="short">Applies the supplied values to the template and overwrites the content of el with the new node(s).</div><div class="long">Applies the supplied values to the template and overwrites the content of el with the new node(s).<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : Mixed<div class="sub-desc">The context element</div></li><li><code>values</code> : Object/Array<div class="sub-desc">The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})</div></li><li><code>returnElement</code> : Boolean<div class="sub-desc">(optional) true to return a Ext.Element (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>HTMLElement/Ext.Element</code><div class="sub-desc">The new node or Element</div></li></ul></div></div></div></td><td class="msource">Template</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.Template-set"></a><b><a href="source/Template.html#method-Ext.Template-set">set</a></b>( <code>String html</code>, <span title="Optional" class="optional">[<code>Boolean compile</code>]</span> )
\r
89 Ext.Template<div class="mdesc"><div class="short">Sets the HTML used as the template and optionally compiles it.</div><div class="long">Sets the HTML used as the template and optionally compiles it.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>html</code> : String<div class="sub-desc"></div></li><li><code>compile</code> : Boolean<div class="sub-desc">(optional) True to compile the template (defaults to undefined)</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Template</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource">Template</td></tr></tbody></table><a id="Ext.Template-events"></a><h2>Public Events</h2><div class="no-members">This class has no public events.</div></div>