Been playing around with what you proposed but not much success.
I'm not doing exactly the same thing you proposed.
I left out the initialization of the Tacos AutoCompleter alone and instead I have overwritten the Initialize method of it in a sort of a hack to the component.
Something like...
hackAjaxAutocompleter = function() {
Ajax.Autocompleter.prototype.initialize = function(element, update, url, options) {
var parameterExpression=/(sp=[^&]*&)/;
dojo.debug("Initialize started...");
this.baseInitialize(element, update, options);
this.options.asynchronous = true;
this.options.onComplete = this.onComplete.bind(this);
this.options.defaultParams = this.options.parameters || null;
this.url = "" + this.options.IDValue + "&");
element.tacosAutocompleter = this;
dojo.debug("this=" + this);
dojo.debug("element=" + element);
dojo.debug("element.id=" + element.id);
dojo.debug("element.tacosAutocompleter=" + element.tacosAutocompleter);
dojo.debug("Initialize ended.");
}
}
So this way I would get a clean hack to the component.
(of course I still had to do a override of the Trigger method in the Java class, but that's not important, that works fine, and my code is called since the listener is correcly called with both parameters (the change I introduced in the hack).
So I'm trying your solution here, but adapted to my code.
I didn't know I could simply assume there is a new property to a DOM object (like the "XXX.tacosAutocompleter" here), but I can't get it to work.
The debug for my case here is...
DEBUG: Initialize started...
DEBUG:
url="" href="http://localhost/delegateIt/app?component=jobSea.">http://localhost/delegateIt/app?component=jobSea...
DEBUG: this=[object Object]
DEBUG: element=innerjobSearch
DEBUG: element.id=undefined
DEBUG: element.tacosAutocompleter=undefined
DEBUG:
Initialize ended:
url="" href="http://localhost/delegateIt/app?component=jobSea.">http://localhost/delegateIt/app?component=jobSea...
So, the element is a valid DOM, "this" is instantiated, of course, but the tacosAutocompleter attribution is ignored, since after it evaluates to null!
Either I didn't understand what you meant or I'm doing something wrong.
Help! :-)
So, the element is a valid DOM, "this" is instantiated, of course, but the tacosAutocompleter attribution is ignored, since after it evaluates to null!
Either I didn't understand what you meant or I'm doing something wrong.
Help! :-)
On 5/29/06, Andreas Andreou <
[EMAIL PROTECTED]> wrote:
Hmmm... you have a point here...
in tacos.js we create script.aculo.us autocompleters using:
new Ajax.Autocompleter(inpId, updId, updUrl, updParams);
and
new Autocompleter.Local(inpId, updId, values, updParams);
and so, we don't store anywhere those references...
And looking at their source, it's not possible to get such a reference
from the 'enhanced' html element.
So, you would like to store those references somewhere, so that users
can get them and use them somehow, correct?
something like dojo does with dojo.widget.manager and dojo.widget.byId
perhaps...
I don't know if it's safe to put them there.
Another solution would be to simply do:
var instance = new Ajax.Autocompleter (inpId, updId, updUrl, updParams);
document.getElementById(inpId).tacosAutocompleter = instance;
What do you think?
Pedro Viegas wrote:
> Thanks Andy.
>
> I had thought of that workarround, but being the TacosAutocompleter
> based on a script.acul.uous Ajax.AutoCompleter widget how can I change
> the URL parameter of the widget?
> If it were a dojo widget I would now how to get it, but like this
> after creating the widget how can I in a JS event get a reference to
> it so I can change it?
> Maybe I'm being a little newbie in this but honnestly I'm in a bit of
> a stall!
> Anybody who nows a bit more about this script.acul.uous
> Ajax.AutoCompleter widget can help me? Andy, how about that, can you
> give me a opinter on this specific issue.
>
> Reagrds,
>
>
> On 5/26/06, *[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED] >*
> <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
>
> the AutoCompleter in svn trunk supports a 'parameters'
> parameter - just like the one found in DirectLink
> see
> http://svn.sourceforge.net/viewcvs.cgi/tacos/trunk/src/java/net/sf/tacos/ajax/components/Autocompleter.jwc?view=markup
> <http://svn.sourceforge.net/viewcvs.cgi/tacos/trunk/src/java/net/sf/tacos/ajax/components/Autocompleter.jwc?view=markup >
>
> Of course all those additional parameters will be 'static' -
> DirectLink has the same
> 'issue'.
>
> My usual hack for this is to define a dummy placeholder parameter,
> i.e. XXX
> and use _javascript_ to replace and rewrite the URL...
>
> I've done something similar in tacos:DebugConsole, but please
> don't tell anyone :)
>
> If anyone knows a better solution, i'm all ears!
>
> From Pedro Viegas <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>:
>
> > Hi all,
> >
> > Been trying for sometime to get something like linked comboboxes of
> > dependant result sets.
> > Something like having a combo with Directories and another Combo
> with the
> > current directory's files.
> > I have been trying to add this funcionallity to the
> Tacos:Autocompleter but
> > it's getting very close to impossible.
> > My goal is to have a simple to use enhanced Autocompleter with
> by setting
> > attributes can link to another AutoCompleter ou other components.
> >
> > What would be perfect was to be able to pass a second parameter
> to the
> > listener method instead of just the typed text.
> > I have been unable to to this till now.
> > I have been able to pass a new static parameter only by
> overriding the
> > Trigger method of the Tacos Autocompleter.java (witch forces
> only the first
> > parameter).
> > Even like this I only could get a static parameter since the
> submit is
> > handled by the script.acul.uous Ajax.AutoCompleter widget and it
> only
> > receives a URL to start with.
> > I found no event I could attach or change so I could add my URL
> dynamic
> > changes or some other solution.
> >
> > Been trying to get this working for more than a week. Could
> really get some
> > help by now! :-S
> >
> > Can anybody shed some light into this?
> > Am I complicating things? If there is a better way to do this
> please let me
> > know.
> >
> > As I said all I want to do is to create a couple of components.
> One a
> > Autocompleter like component. The other a normal PropertySelection.
> > But both of them with a linked component property for passing
> the filter to
> > build the selection values from.
> >
> > One last thing... all of this the AJAX way of course. Something the
> > Tacos:Autocompleter does, and that is easy enought to build
> > PropertySelection version of it.
> >
> > Thanks,
> >
> > --
> > Pedro Viegas
> >
>
>
> --
>
>
>
>
> -------------------------------------------------------
> All the advantages of Linux Managed Hosting--Without the Cost and
> Risk!
> Fully trained technicians. The highest number of Red Hat
> certifications in
> the hosting industry. Fanatical Support. Click to learn more
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642>
> _______________________________________________
> Tacos-devel mailing list
> [email protected]
> <mailto:[email protected] >
> https://lists.sourceforge.net/lists/listinfo/tacos-devel
>
>
>
>
> --
> Pedro Viegas
-------------------------------------------------------
All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
Tacos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tacos-devel
--
Pedro Viegas
