Iniciante em AJAX

1 resposta
G

Bom galera, me foi indicado o fórum Guj para tentar a solução para a minha dúvida…
To com um form em uma página jsp, nesse form tenho campos que se referem à uma determinada quantidade de objetos, por trás da página eu faço um cálculo com relação a essa quantidade que retorna um valor. Para tanto eu gostaria e acredito ser possível com a ferramenta AJAX.
enfim, lendo tutoriais e etc eu me aventurei, mas quando nem no inicio dá certo, a frustração é grande, exemplifico a seguir minha situação…

function chamaAjax(){
	var req;
	if (window.XMLHttpRequest) {
	       req = new XMLHttpRequest();
	}else if (window.ActiveXObject) {
	       isIE = true;
	       req = new ActiveXObject("Microsoft.XMLHTTP");
	}		
	var url = "/postagens/servlet/CalculoValoresECTControl?event_html=0&nome=Guilherme&tecnologia=java";
	req.onreadystatechange = processRequest;
	req.open("GET", url, true);
	req.send(null);
}

E o IE me retorna como req is undefined…

1 Resposta

N

Sugiro esse codigo

function getHTTPObject() {
					var req;
				
					try {
						if (window.XMLHttpRequest) {
							var req = new XMLHttpRequest();
				
							if (req.readyState == null) {
								req.readyState = 1;
								req.addEventListener("load", function () {
									req.readyState = 4;
									if (typeof req.onReadyStateChange == "function")
										req.onReadyStateChange();
								}, false)
							}
							return req;
						}
				
				 		if (window.ActiveXObject) {
							var prefixes = ["MSXML2", "Microsoft", "MSXML", "MSXML3"];
				
							for (var i = 0; i < prefixes.length; i++) {
							try {
							    req = new ActiveXObject(prefixes[i] + ".XmlHttp");
							    return req;
								} catch (ex) {}
							}
						}
					} catch (ex) {}
				}

var http = getHTTPObject();

http.open("GET", "/postagens/servlet/CalculoValoresECTControl?event_html=0&nome=Guilherme&tecnologia=java", true);
						http.onreadystatechange = function() {processRequest();};
						http.send(null);
Criado 7 de maio de 2010
Ultima resposta 7 de mai. de 2010
Respostas 1
Participantes 2