loadhtml()
Loads HTML content from the specified HTML file. The file may be located inside the template (see Snippets) or hosted on a Content Management System or on another location outside the template.
An optional allows you to retrieve only the content of matching elements.
Loadhtml() is cached per batch run (based on the URL) in print/email.
loadhtml(location)
Loads all HTML from the specified HTML file.
location
String containing a path that can be absolute
or relative to the /. Use snippets/<snippet-name>
to retrieve the content from an HTML file residing in
the Snippets folder on the Resources panel. In order to retrieve files from outside the template the file protocol is supported as well as the http/https protocols. The complete syntax of a fully qualified URL with the "file" protocol is: file://<host>/<path>. If the host is "localhost", it can be omitted, resulting in file:///<path>, for example: file:///c:/somefolder/somecontent.html. When using the http/https protocol, remember that only absolute paths are supported inside remote snippets (see Remote snippets).
Examples
This script loads a local HTML snippet (from the Resources panel) directly into the matched elements results.loadhtml("snippets/snippet.html");
The following script loads a local HTML snippet (Resources panel) into a variable. The replaceWith() command is used to replace the element(s) matched by the script's selector with the contents of the snippet. var mysnippet = loadhtml('snippets/snippet.html'); results.replaceWith(mysnippet);
Same result as the previous script, but a different notation: results.replaceWith(loadhtml('snippets/snippet.html'));
The following script loads a snippet into a variable and finds/replaces text in the variable before inserting the content into the page. The second find command also adds formatting to the replacing text. var mysnippet = loadhtml('file:///C:/Users/PParker/Documents/Example.html'); mysnippet.find('@var1@').text('OL Connect 1'); mysnippet.find('@var2@').html('<i>OL Connect 2</i>').css('text-decoration','underline'); results.replaceWith(mysnippet);
This last script loads a snippet into a variable and retrieves an element from the snippet using query(). var mysnippet = loadhtml('snippets/text-root-wrapped.html'); var subject = query("#subject", mysnippet).text(); results.append("<p style='font-weight: bold;'>" + subject + "</p>");
loadhtml(location, selector)Retrieves specific content from the specified HTML file. location String containing a path that can be absolute
or relative to the section/context. Use snippets/<snippet-name>
to retrieve the content from an HTML file residing in
the Snippets folder on the Resources panel. In order to retrieve files from outside the template, the file protocol is supported as well as the http/https protocols. The complete syntax of a fully qualified URL with the "file" protocol is: file://<host>/<path>. If the host is "localhost", it can be omitted, resulting in file:///<path>, for example: file:///c:/somefolder/somecontent.html. When using the http/https protocol, remember that only absolute paths are supported inside remote snippets (see Remote snippets). selector String. The supplied selector should conform to CSS selector syntax and allows you to retrieve only the content of matching elements. ExamplesThis script loads a specific element from a snippet and uses that to replace the results (the HTML element or set of HTML elements matched by the selector of the script; see results). var mysnippet = loadhtml('snippets/snippet-selectors.html','#item3'); results.replaceWith(mysnippet);
This script loads the children of the selected element. var snippet = loadhtml('file:///C:/Users/PParker/Documents/Example.html','foobar').children(); results.replaceWith(snippet);
The next script loads a remote snippet (see Remote snippets), looks for an H1 heading and uses that text. var post = loadhtml('snippets/post.rhtml'); var h1 = query('h1', post).text(); results.text(h1);
Another example is given in the following how-to: Using a selector to load part of a snippet. |