var request; var queryString; //will hold the POSTed data function sendData(){ setQueryString(); var url="/survey/poll.jsp"; httpRequest("POST",url,true); } //event handler for XMLHttpRequest function handleResponse(){ if(request.readyState == 4){ if(request.status == 200){ var resp = request.responseText; div = document.getElementById("poll"); div.innerHTML=resp; } else { alert("A problem occurred with communicating between "+ "the XMLHttpRequest object and the server program. Query: "+queryString+"\nStatus: "+request.status); } } else { div = document.getElementById("poll"); div.innerHTML="
"; }//end outer if } /* Initialize a Request object that is already constructed */ function initReq(reqType,url,bool){ /* Specify the function that will handle the HTTP response */ request.onreadystatechange=handleResponse; request.open(reqType,url,bool); request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); /* Only works in Mozilla-based browsers */ //request.overrideMimeType("text/XML"); request.send(queryString); } /* Wrapper function for constructing a Request object. Parameters: reqType: The HTTP request type such as GET or POST. url: The URL of the server program. asynch: Whether to send the request asynchronously or not. */ function httpRequest(reqType,url,asynch){ //Mozilla-based browsers if(window.XMLHttpRequest){ request = new XMLHttpRequest(); } else if (window.ActiveXObject){ request=new ActiveXObject("Msxml2.XMLHTTP"); if (! request){ request=new ActiveXObject("Microsoft.XMLHTTP"); } } //the request could still be null if neither ActiveXObject //initializations succeeded if(request){ initReq(reqType,url,asynch); } else { alert("Your browser does not permit the use of all "+ "of this application's features!");} } function setQueryString(){ queryString=""; var frm = document.forms[1]; var numberElements = frm.elements.length; for(var i = 0; i < numberElements; i++) { if(frm.elements[i].checked){ queryString = "poll="+ encodeURIComponent(frm.elements[i].value); } } queryString += "&pollid="+frm.pollid.value; if (frm.hcp) queryString += "&HCP="+frm.hcp.value; } function stylizeDiv(bdyTxt,div){ //reset DIV content div.innerHTML=""; div.style.backgroundColor="yellow"; div.innerHTML=bdyTxt; } function getDocInfo(doc){ var root = doc.documentElement; var info = "

Document root element name:

"+ root.nodeName; var nds; if(root.hasChildNodes()) { nds=root.childNodes; info+= "

Root node's child node names/values:

"; for (var i = 0; i < nds.length; i++){ info+= nds[i].nodeName; if(nds[i].hasChildNodes()){ info+= " : \""+nds[i].firstChild.nodeValue+"\"
"; } else { info+= " : Empty
"; } } } return info; }