@RickEEE,
You bet there is! What you're looking for is, sure enough, is a passthrough block. A passthrough block passes content directly through to the output without doing any processing on it.
Here's an example:
++++
<script language="javascript">
// Load XML
var xml = new ActiveXObject("Microsoft.XMLDOM")
xml.async = false
xml.load("fieldParams/ReqParams.xml")
// Load the XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load("xsl.xsl")
// Transform
document.write(xml.transformNode(xsl))
</script>
++++
(a passthrough block also accepts a custom list of subs, such as subs=attributes)
However, generally it's not a good idea to mix content and presentation / behavior. A better way of accomplishing a similar result without having to clutter up your content document is the docinfo feature. Just drop the script tag into a file named docinfo-footer.html:
<script language="javascript">
// Load XML
var xml = new ActiveXObject("Microsoft.XMLDOM")
xml.async = false
xml.load("fieldParams/ReqParams.xml")
// Load the XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load("xsl.xsl")
// Transform
document.write(xml.transformNode(xsl))
</script>
Then activate it when calling Asciidoctor using -a docinfo=shared-footer or add :docinfo: shared-footer to the document header.
It's also possible to introduce docinfo content using the docinfo extension point.
Cheers,
-Dan