Sorry ignore my previous post

2009/8/22 Alex Mcauley <webmas...@thecarmarketplace.com>

>
> In my quest to create a function that globaly tells a page when a
> request is going on with the ability to disable certain form elements
> i have been delving into Ajax.Responders.
>
> I stumbled upon this page
>
>
> http://www.mail-archive.com/rubyonrails-spino...@googlegroups.com/msg06312.html
>
> It basically says that one can access the container that the
> request.responseText is headed for - yet i do what the demo says and
> it returns an Object..
>
>
> What the best thing to do would be somehting like arguments callee
> (the button or node that created the request) be returned in the
> Object instance
>
> for example.
>
> Ajax.Responders.register({
>  onCreate: function(request) {
> var what_called_me_was request.(I dont know what to put here!!!!)...
> }
> });
>
> Can anyone help ..
>
> I have included the whole object below which has been created like
> this...
> var r='';
> for(var i in request) {
> r+=request[i]+' ';
> }
> $('debug').update(r);
>
>
> and here is the output...
>
> [object Object] [object Object] [object XMLHttpRequest] /requests/
> ShowCompanyList post [object Object] function ($super, container, url,
> options) { this.container = {success: container.success || container,
> failure: container.failure || (container.success ? null : container)};
> options = Object.clone(options); var onComplete = options.onComplete;
> options.onComplete = function (response, json) {this.updateContent
> (response.responseText);if (Object.isFunction(onComplete)) {onComplete
> (response, json);}}.bind(this); $super(url, options); } function
> (responseText) { var receiver = this.container[this.success() ?
> "success" : "failure"], options = this.options; if (!
> options.evalScripts) { responseText = responseText.stripScripts(); }
> if (receiver = $(receiver)) { if (options.insertion) { if
> (Object.isString(options.insertion)) { var insertion = {}; insertion
> [options.insertion] = responseText; receiver.insert(insertion); } else
> { options.insertion(receiver, responseText); } } else { receiver.update
> (responseText); } } } function klass() { this.initialize.apply(this,
> arguments); } false function (url) { this.url = url; this.method =
> this.options.method; var params = Object.clone
> (this.options.parameters); if (!["get", "post"].include(this.method))
> { params._method = this.method; this.method = "post"; }
> this.parameters = params; if (params = Object.toQueryString(params))
> { if (this.method == "get") { this.url += (this.url.include("?") ?
> "&" : "?") + params; } else if (/Konqueror|Safari|KHTML/.test
> (navigator.userAgent)) { params += "&_="; } } try { var response = new
> (Ajax.Response)(this); if (this.options.onCreate)
> { this.options.onCreate(response); } Ajax.Responders.dispatch
> ("onCreate", this, response); this.transport.open
> (this.method.toUpperCase(), this.url, this.options.asynchronous); if
> (this.options.asynchronous) { this.respondToReadyState.bind(this).defer
> (1); } this.transport.onreadystatechange = this.onStateChange.bind
> (this); this.setRequestHeaders(); this.body = this.method == "post" ?
> this.options.postBody || params : null; this.transport.send
> (this.body); if (!this.options.asynchronous &&
> this.transport.overrideMimeType) { this.onStateChange(); } } catch (e)
> { this.dispatchException(e); } } function () { var readyState =
> this.transport.readyState; if (readyState > 1 && !(readyState == 4 &&
> this._complete)) { this.respondToReadyState
> (this.transport.readyState); } } function () { var headers = {'X-
> Requested-With': "XMLHttpRequest", 'X-Prototype-Version':
> Prototype.Version, Accept: "text/javascript, text/html, application/
> xml, text/xml, */*"}; if (this.method == "post") { headers['Content-
> type'] = this.options.contentType + (this.options.encoding ? ";
> charset=" + this.options.encoding : ""); if
> (this.transport.overrideMimeType && (navigator.userAgent.match(/Gecko\/
> (\d{4})/) || [0, 2005])[1] < 2005) { headers.Connection = "close"; } }
> if (typeof this.options.requestHeaders == "object") { var extras =
> this.options.requestHeaders; if (Object.isFunction(extras.push)) { for
> (var i = 0, length = extras.length; i < length; i += 2) { headers
> [extras[i]] = extras[i + 1]; } } else { $H(extras).each(function
> (pair) {headers[pair.key] = pair.value;}); } } for (var name in
> headers) { this.transport.setRequestHeader(name, headers[name]); } }
> function () { var status = this.getStatus(); return !status || status
> >= 200 && status < 300; } function () { try { return
> this.transport.status || 0; } catch (e) { return 0; } } function
> (readyState) { var state = Ajax.Request.Events[readyState], response =
> new (Ajax.Response)(this); if (state == "Complete") { try
> { this._complete = true; (this.options["on" + response.status] ||
> this.options["on" + (this.success() ? "Success" : "Failure")] ||
> Prototype.emptyFunction)(response, response.headerJSON); } catch (e)
> { this.dispatchException(e); } var contentType = response.getHeader
> ("Content-type"); if (this.options.evalJS == "force" ||
> (this.options.evalJS && this.isSameOrigin() && contentType &&
> contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?
> \s*$/i))) { this.evalResponse(); } } try { (this.options["on" + state]
> || Prototype.emptyFunction)(response, response.headerJSON);
> Ajax.Responders.dispatch("on" + state, this, response,
> response.headerJSON); } catch (e) { this.dispatchException(e); } if
> (state == "Complete") { this.transport.onreadystatechange =
> Prototype.emptyFunction; } } function () { var m = this.url.match(/^
> \s*https?:\/\/[^\/]*/); return !m || m[0] == "#{protocol}//#{domain}#
> {port}".interpolate({protocol: location.protocol, domain:
> document.domain, port: location.port ? ":" + location.port : ""}); }
> function (name) { try { return this.transport.getResponseHeader(name)
> || null; } catch (e) { return null; } } function () { try { return eval
> ((this.transport.responseText || "").unfilterJSON()); } catch (e)
> { this.dispatchException(e); } } function (exception)
> { (this.options.onException || Prototype.emptyFunction)(this,
> exception); Ajax.Responders.dispatch("onException", this,
> exception); }
>
>
> Perhaps this is one for the Devs!!
>
> It goes without saying i think that at any time a request is going on
> it would be very handy to know where the result of that request is
> heading to (the element) and the element that called it (so we can
> disable / enable it when the request is Completed)....
>
> Perhaps it would be a nice edition to Prototype2.0 while i hack mine
> to pieces!
>
> All help welcome
>
> Thanks in advance
>
> Alex
>
> >
>


-- 
Best Regards,
Vladimir Tkach

+972-54-7574166
tea...@gmail.com

http://teamco-anthill.blogspot.com/

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptaculous@googlegroups.com
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to