diff options
| -rwxr-xr-x | javascript/MochiKitBitAjax.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/javascript/MochiKitBitAjax.js b/javascript/MochiKitBitAjax.js new file mode 100755 index 0000000..d37c146 --- /dev/null +++ b/javascript/MochiKitBitAjax.js @@ -0,0 +1,40 @@ +/* Dependencies: MochiKit Base Async */ +BitAjax = { + "updater": function(target, url, queryString) { + BitBase.showSpinner(); + if (queryString != "" && queryString !=null){ + url += "?"+queryString+"&tk="+bitTk; + } + var r = doSimpleXMLHttpRequest(url); + r.addCallback( BitAjax.updaterCallback, target ); + r.addErrback( BitAjax.error ); + }, + + "updaterCallback": function(target, rslt){ + BitBase.hideSpinner(); + var e = document.getElementById(target); + if (e != null){e.innerHTML = rslt.responseText;} + }, + + "error": function( rqst ) { + alert( 'Sorry, there was a problem getting the requested data:\n'+rqst.message ); + BitBase.hideSpinner(); + }, + + "getAndCall": function(elm, func, url, force) { + if (!force && elm.loadedResponse) { + func(elm.loadedResponse); + } else { + BitBase.showSpinner(); + var r = doSimpleXMLHttpRequest(url); + r.addCallback( BitAjax.getAndCallCallback, elm, func ); + r.addErrback( BitAjax.error ); + } + }, + + "getAndCallCallback": function(elm, func, rslt){ + BitBase.hideSpinner(); + elm.loadedResponse = rslt.responseText || "No Response."; + func(elm.loadedResponse); + } +} |
