<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7652.24">
<TITLE>How to assign value to a textarea out of ajaxable plugin</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->
<BR>

<P><TT><FONT SIZE=2>Hi all,<BR>
<BR>
I know, that this might be a dumb question, but I'm lost and I don't find any solution by myself. I wrote my own plugin, which should write something into a textarea if the user selects something in a dropdown list. Without Ajax, no problem, but I can't find out how to do it with Ajax. Here are the details:<BR>
<BR>
In cartoclient.tpl I defined the dropdown menu and the textarea:<BR>
<BR>
&lt;select name=&quot;col&quot; onchange=&quot;javascript:CartoWeb.trigger('refsel.submit','formItemSelected()');&quot;&gt;<BR>
{html_options values=$col_values output=$col_output selected=$col}<BR>
&lt;/select&gt;&lt;br /&gt;<BR>
Selection:&lt;br /&gt;&lt;textarea type=&quot;text&quot; name=&quot;selection&quot; cols=&quot;30&quot; rows=&quot;10&quot; &gt;{$current_selection}&lt;/textarea&gt;&lt;br /&gt;<BR>
<BR>
<BR>
Then I defined a new plugin called refsel, which implements ajaxable. The implementing methods:<BR>
<BR>
&nbsp;&nbsp;&nbsp; /*<BR>
&nbsp;&nbsp;&nbsp;&nbsp; * Ajaxable methods<BR>
&nbsp;&nbsp;&nbsp;&nbsp; */<BR>
&nbsp;&nbsp;&nbsp;&nbsp; public function ajaxHandleAction($actionName,PluginEnabler $pluginEnabler){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; switch($actionName){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case refsel.submit:<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pluginsDirectives-&gt;disableCoreplugins();<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pluginsDirectives-&gt;enablePlugin('refsel');<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break;<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>
&nbsp;&nbsp;&nbsp;&nbsp; }<BR>
&nbsp;&nbsp;&nbsp;&nbsp;<BR>
&nbsp;&nbsp;&nbsp;&nbsp; public function ajaxGetPluginResponse(AjaxPluginResponse $ajaxPluginResponse){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ajaxPluginResponse-&gt;addVariable('sel','HelloWorld');<BR>
&nbsp;&nbsp;&nbsp;&nbsp; }<BR>
<BR>
In refsel.ajax.js I defined:<BR>
<BR>
AjaxPlugins.refsel = {<BR>
&nbsp;&nbsp;&nbsp; handleResponse: function(pluginOutput){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $('selection').current_selection=pluginOutput.variables.sel;<BR>
&nbsp;&nbsp;&nbsp; }<BR>
};<BR>
<BR>
/*<BR>
&nbsp;* Plugin Actions<BR>
&nbsp;*/<BR>
&nbsp;AjaxPlugins.refsel.Actions = {};<BR>
&nbsp;AjaxPlugins.refsel.Actions.submit = {<BR>
&nbsp;&nbsp;&nbsp;&nbsp; buildPostRequest: function(argObject){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return AjaxHandler.buildPostRequest();<BR>
&nbsp;&nbsp;&nbsp;&nbsp; },<BR>
&nbsp;&nbsp;&nbsp;&nbsp; buildGetRequest: function(argObject){<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return '';<BR>
&nbsp;&nbsp;&nbsp;&nbsp; },<BR>
&nbsp;&nbsp;&nbsp;&nbsp; onBeforeAjaxCall: function(argObject){<BR>
&nbsp;&nbsp;&nbsp; },<BR>
&nbsp;&nbsp;&nbsp; onAfterAjaxCall: function(argObject){<BR>
&nbsp;&nbsp;&nbsp; }<BR>
&nbsp;}<BR>
<BR>
I know, there has to be something wrong with handleResponse, since I get<BR>
<BR>
Error: AjaxHandler.actionRequest(): received response is malformed!<BR>
<BR>
when I try to use the plugin. I tried several different versions of handleResponse, but I can't find out how to do it the right way.<BR>
<BR>
Is there somebody, who can help me with this little (but annoying) problem? I would be very grateful :-)<BR>
<BR>
Thanks in Advance!<BR>
Carolin</FONT></TT>
</P>

</BODY>
</HTML>