How can I get an HTML page (.html) to read the contents of a text document that can be found in the same folder as the .html file? The server is IIS.
Thanks
How can I get an HTML page (.html) to read the contents of a text document that can be found in the same folder as the .html file? The server is IIS.
Thanks
It seems like you can use #include directives in IIS.
http://msdn.microsoft.com/en-us/library/ms525185.aspx
But to be honest I strongly suggest using a scripting language, either PHP or something in the ASP family.
You can put an url to the text file directly, the user will download it by clicking. If this is not what you want, then you can probably use Server Side Includes (see here and here). If this does not work, you must write a script (ASP?) to read the file.
By adding the following JavaScript code to the element of the web page:
<script>
function clientSideInclude(id, url)
{
var req = false;
// For Safari, Firefox, and other non-MS browsers
if (window.XMLHttpRequest)
{
try {
req = new XMLHttpRequest();
} catch (e) {
req = false;
}
} else if (window.ActiveXObject) {
// For Internet Explorer on Windows
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
req = false;
}
}
}
var element = document.getElementById(id);
if (!element) {
alert("Bad id " + id +
"passed to clientSideInclude." +
"You need a div or span element " +
"with this id in your page.");
return;
}
if (req) {
// Synchronous request, wait till we have it all
req.open('GET', url, false);
req.send(null);
element.innerHTML = req.responseText;
} else {
element.innerHTML =
"Sorry, your browser does not support " +
"XMLHTTPRequest objects. This page requires " +
"Internet Explorer 5 or better for Windows, " +
"or Firefox for any system, or Safari. Other " +
"compatible browsers may also exist.";
}
}
</script>
IIS can do server-side includes. BUt, if you can't do this, and want to include the text file in the HTML, you could grab the file with an XMLHTTPRequest object and insert it into the DOM with Javascript.
Naturally, a JS library will make this easier. For example in prototype:
new Ajax.Updater($('id_of_div'), 'http://yourdomain/path/to/file.txt');
that would grab the file and drop the contents into <div id="id_of_div"></div>
Or in jQuery:
$("#id_of_div").load("http://yourdomain/path/to/file.txt");