src/hg/js/ajax.js 1.4
1.4 2009/03/19 20:54:53 tdreszer
Support for setting reset to defaults variable and submitting self.
Index: src/hg/js/ajax.js
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/js/ajax.js,v
retrieving revision 1.3
retrieving revision 1.4
diff -b -B -U 1000000 -r1.3 -r1.4
--- src/hg/js/ajax.js 5 Jun 2008 01:51:03 -0000 1.3
+++ src/hg/js/ajax.js 19 Mar 2009 20:54:53 -0000 1.4
@@ -1,75 +1,90 @@
// AJAX Utilities
var debug = false;
var req;
function nullProcessReqChange()
{
if(debug)
alert("req.responseText: " + req.responseText);
}
function loadXMLDoc(url)
{
// Load XML without a request handler; this is useful if you are sending one-way messages.
loadXMLDoc(url, null);
}
function loadXMLDoc(url, callBack)
{
// From http://developer.apple.com/internet/webcontent/xmlhttpreq.html
if(callBack == null)
callBack = nullProcessReqChange;
req = false;
// branch for native XMLHttpRequest object
if(window.XMLHttpRequest && !(window.ActiveXObject)) {
try {
req = new XMLHttpRequest();
} catch(e) {
req = false;
}
} else if(window.ActiveXObject) {
// branch for IE/Windows ActiveX version
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
req = false;
}
}
}
if(debug)
alert(url);
if(req) {
req.onreadystatechange = callBack;
req.open("GET", url, true);
req.send("");
}
}
function setCartVar(name, value)
{
// Asynchronously set a cart variable.
var loc = window.location.href;
if(loc.indexOf("?") > -1) {
loc = loc.substring(0, loc.indexOf("?"));
}
if(loc.lastIndexOf("/") > -1) {
loc = loc.substring(0, loc.lastIndexOf("/"));
}
loc = loc + "/cartDump";
var hgsid;
var list = document.getElementsByName("hgsid");
if(list.length) {
var ele = list[0];
hgsid = ele.value;
}
if(!hgsid) {
hgsid = getURLParam(window.location.href, "hgsid");
}
loc = loc + "?submit=1&noDisplay=1&cartDump.varName=" + escape(name) + "&cartDump.newValue=" + escape(value) + "&hgsid=" + hgsid;
loadXMLDoc(loc);
}
+
+function submitMain()
+{
+ $('form[name="mainForm"]').submit();
+}
+function setCartVarAndRefresh(name,val)
+{
+ setCartVar(name,val);
+ var main=$('form[name="mainForm"]')
+ $(main).attr('action',window.location.href);
+ setTimeout("submitMain()",50); // Delay in submit helps ensure that cart var has gotten there first.
+
+ return false;
+}
+