Internet Explorer Caching Using Ajax
Posted: Sat Feb 28, 2009 9:19 am
Hi, I know this is a fairly common issue, and I have tried a number of methods (adding a random number to the GET, changing the GET to POST etc.) But I still get the same issue of internet explorer working with an old recordset that the user has since updated on my page.
What happens is the user inserts a record (into my coach booking form) but when the user clicks to show the schedule the changes are not reflected in internet explorer, how can I force my function to work with the latest set of data?
The floowing is the function that is used to show the latest schedule:
What happens is the user inserts a record (into my coach booking form) but when the user clicks to show the schedule the changes are not reflected in internet explorer, how can I force my function to work with the latest set of data?
The floowing is the function that is used to show the latest schedule:
Code: Select all
<script type="text/javascript">
<!--
//Browser Support Code
function GetSchedule(){
var ajaxRequest; // The variable that makes Ajax possible!
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
var ajaxDisplay = document.getElementById('ajaxDiv');
ajaxDisplay.innerHTML = ajaxRequest.responseText;
}
}
var date = document.getElementById('date').value;
var time = document.getElementById('time').value;
// var queryString = "?date=" + date + "&time=" + time;
//
// ajaxRequest.open("GET", "getschedule.php" + queryString,+'&nocache = '+nocache true);
// ajaxRequest.send(null);
var date = document.getElementById('date').value;
var time = document.getElementById('time').value;
var queryString = "?date=" + date + "&time=" + time;
ajaxRequest.open("GET", "getschedule.php" + queryString, true);
ajaxRequest.send(null);
}
//-->
</script>