Thanks Randy, I think this is the time I should use the &#39;#access&#39; property for these elements. I can create all the elements at first page load and then toggle whatever I need using the &#39;#access&#39; property.<br>

<br><br clear="all">--<br>Regards,<br>Nitin Kumar Gupta<br><a href="http://publicmind.in/blog/">http://publicmind.in/blog/</a><br>
<br><br><div class="gmail_quote">On Sat, Apr 3, 2010 at 7:05 AM, Hadubard <span dir="ltr">&lt;<a href="mailto:hadubard@gmail.com">hadubard@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

This should be working. But you need indeed to tell ahah about the new form. Did you follow the descriptions on <a href="http://drupal.org/node/331941" target="_blank">http://drupal.org/node/331941</a>? Have a look at the quicktabs_ahah() function and the usage of $javascript[&#39;setting&#39;]. If I remember correctly than this is one of the keys to introduce your dynamic elements and register their behaviors.<br>


<br>
best regards,<br>
hadubard<br>
<br>
Am 03.04.2010 um 03:21 schrieb Randy Fay:<br>
<div><div></div><div class="h5"><br>
&gt; If I&#39;m not mistaken, the problem is that the AHAH bindings are done at page load time, and of course you&#39;re replacing the element that&#39;s bound with another element without a page reload, but the javascript does not know that you&#39;ve changed things underneath it.<br>


&gt;<br>
&gt; I don&#39;t know a way to introduce a new element and have it bound as an AHAH element. However, you could have both on the original page, with one hidden, and that would probably work.<br>
&gt;<br>
&gt; In D7, you could probably find some ways to work around this, although it would still require some magic.<br>
&gt;<br>
&gt; -Randy<br>
&gt;<br>
&gt; On Fri, Apr 2, 2010 at 3:29 PM, nitin gupta &lt;<a href="mailto:nitingupta.iitg@gmail.com">nitingupta.iitg@gmail.com</a>&gt; wrote:<br>
&gt; Hi,<br>
&gt;<br>
&gt; I have been scratching my head for long, looks like cant figure it out. If I add elements to the form on an AHAH refresh, let us say a submit button with AHAH properties, this button will not be submitted using AHAH. Anyone know about this? any pointers to resources? any work around?<br>


&gt;<br>
&gt;<br>
&gt; function test_form($form_state) {<br>
&gt;   $form[&#39;open&#39;] = array(&#39;#value&#39; =&gt; &#39;&lt;div id=&quot;test_replace&quot;&gt;&#39;);<br>
&gt;   dpm($form_state);<br>
&gt;   if($form_state[&#39;test&#39;] == 1) {<br>
&gt;   $form[&#39;test&#39;][&#39;share&#39;] = array(<br>
&gt;     &#39;#type&#39; =&gt; &#39;submit&#39;,<br>
&gt;         &#39;#value&#39; =&gt; &#39;share&#39;,<br>
&gt;     &#39;#submit&#39; =&gt; array(&#39;test_form_js_submit&#39;),<br>
&gt;     &#39;#ahah&#39; =&gt; array(<br>
&gt;       &#39;path&#39; =&gt; &#39;test/js&#39;,<br>
&gt;       &#39;wrapper&#39; =&gt; &#39;test_replace&#39;<br>
&gt;     ));<br>
&gt;   }<br>
&gt;   else {<br>
&gt;       $form[&#39;test&#39;][&#39;share2&#39;] = array(<br>
&gt;     &#39;#type&#39; =&gt; &#39;submit&#39;,<br>
&gt;     &#39;#value&#39; =&gt; &#39;share2&#39;,<br>
&gt;     &#39;#submit&#39; =&gt; array(&#39;test_form_js_submit&#39;),<br>
&gt;     &#39;#ahah&#39; =&gt; array(<br>
&gt;       &#39;path&#39; =&gt; &#39;test/js&#39;,<br>
&gt;       &#39;wrapper&#39; =&gt; &#39;test_replace&#39;<br>
&gt;     ));<br>
&gt;   }<br>
&gt;<br>
&gt;   $form[&#39;close&#39;] = array(&#39;#value&#39; =&gt; &#39;&lt;/div&gt;&#39;);<br>
&gt;<br>
&gt;   return $form;<br>
&gt; }<br>
&gt;<br>
&gt; function test_form_js_submit(&amp;$form, &amp;$form_state) {<br>
&gt;<br>
&gt;   $form_state[&#39;test&#39;] = 1 ;<br>
&gt;   $form_state[&#39;rebuild&#39;] = TRUE;<br>
&gt; }<br>
&gt;<br>
&gt; function test_form_js() {<br>
&gt;   $form_state = array(&#39;submitted&#39; =&gt; FALSE);<br>
&gt;   $form_build_id = $_POST[&#39;form_build_id&#39;];<br>
&gt;   $form = form_get_cache($form_build_id, $form_state);<br>
&gt;   $form_state[&#39;post&#39;] = $form[&#39;#post&#39;] = $_POST;<br>
&gt;   $form[&#39;#programmed&#39;] = $form[&#39;#redirect&#39;] = FALSE;<br>
&gt;   $args = $form[&#39;#parameters&#39;];<br>
&gt;   $form_id = array_shift($args);<br>
&gt;   drupal_process_form($form_id, $form, $form_state);<br>
&gt;   $form = drupal_rebuild_form($form_id, $form_state, $args, $form_build_id);<br>
&gt;<br>
&gt;   //Get HTML for the replacement form. Only these elements will be AHAH-refreshed.<br>
&gt;   test_add_children($new_form[&#39;test&#39;], $form[&#39;test&#39;]);<br>
&gt;   $output = theme(&#39;status_messages&#39;) . drupal_render($new_form);<br>
&gt;   drupal_json(array(&#39;status&#39; =&gt; TRUE, &#39;data&#39; =&gt; $output));<br>
&gt; }<br>
&gt;<br>
&gt; function test_add_children(&amp;$new_form, $form) {<br>
&gt;   foreach (element_children($form) as $child) {<br>
&gt;     $new_form[$child] = $form[$child];<br>
&gt;     test_add_children($new_form[$child], $form[$child]);<br>
&gt;   }<br>
&gt; }<br>
&gt;<br>
&gt; function test_menu() {<br>
&gt; $items = array();<br>
&gt;<br>
&gt; $items[&#39;test&#39;] = array(<br>
&gt;     $items[&#39;test/js&#39;] = array(<br>
&gt;     &#39;page callback&#39; =&gt; &#39;test_form_js&#39;,<br>
&gt;     &#39;type&#39; =&gt; MENU_CALLBACK,<br>
&gt;   );<br>
&gt;<br>
&gt;   return $items;<br>
&gt;<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; In the above code, when &#39;share2&#39; is clicked it submits perfectly using ahah, and converts to &#39;share&#39; but this button does not have ahah properties.<br>
&gt;<br>
&gt; --<br>
&gt; Regards,<br>
&gt; Nitin Kumar Gupta<br>
&gt; <a href="http://publicmind.in/blog/" target="_blank">http://publicmind.in/blog/</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Randy Fay<br>
&gt; Drupal Development, troubleshooting, and debugging<br>
&gt; <a href="mailto:randy@randyfay.com">randy@randyfay.com</a><br>
&gt; +1  970.462.7450<br>
&gt;<br>
<br>
</div></div></blockquote></div><br>