AJAX Not Working In Firefox

D

Danny R

I have the following javascript which works in either IE or Firefox but
not on both.

When I set the code to

http_request.open('POST', url, true) - Works in IE only
http_request.open('GET', url, true) - Works in Firefox only; Does not
refresh in IE.

How do I resolve this?

Thanks in advance.


=====================================

The page that uses AJAX is http://www.ubelt.com

http://www.ubelt.com/ub/apps/ajax/ajaxlatestphotos.js (for Full Code)

function makeHttpRequest(url, callback_function, return_xml)
{
var http_request = false;

if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}

} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}

if (!http_request) {
alert('Unfortunatelly you browser doesn\'t support this
feature.');
return false;
}
http_request.onreadystatechange = function() {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
if (return_xml) {
eval(callback_function +
'(http_request.responseXML)');
} else {
eval(callback_function +
'(http_request.responseText)');
}
} else {
//alert('There was a problem with the request.(Code: ' +
http_request.status + ')');
}
}
}
http_request.open('POST', url, true);
http_request.send(null);
}
 
S

Sjigger

Guestion why don't u use prototype? pretty easy and it work's in every
browser.

http://wiki.script.aculo.us/scriptaculous/show/Prototype

example:
new Ajax.Updater('mydiv', '/foo/bar', {method:'post',
postBody:'thisvar=true&thatvar=Howdy', asynchronous:true,
evalScripts:true});

evalScripts on the end means that when the ajax page you are calling
contains for example <script>alert('hello');</script> it will execute
that the other stuff just echo't will be outputted to mydiv.

i give you this because i stoped using my own crap because this stuff
is alway's working

Hope this helps
 
B

b83s

another thing...

stuff like this:
document.getElementById('ajax-latestphotos').innerHTML = html_content;

will become this:
$('ajax-latestphotos').innerHTML=html_content
 
D

Danny R

Thanks for the response.

However, any of you guys know why this isn't working on both browsers?
Is there an alternative code that works on both?
 
M

marss

Danny R напиÑав:
if (return_xml) {
eval(callback_function +
'(http_request.responseXML)');
} else {
eval(callback_function +
'(http_request.responseText)');
}

You can use http_request.responseXML only for appointed content type:

var respType = http_request.getResponseHeader("Content-Type");
if (respType == 'text/xml')
{
// process http_request.responseXML
}
else
{
// process http_request.responseText
}

Does not refresh in IE.

It may be caused by caching.
Simple solution were posted here
http://groups.google.com.ua/group/c...5568313f853/7833ea0f52689067#7833ea0f52689067

Instead of
var url = '/ub/apps/ajax/latestphotosxml.aspx';
use
var url = '/ub/apps/ajax/latestphotosxml.aspx?'+ Math.random();
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,020
Latest member
GenesisGai

Latest Threads

Top