hmmm ok.

in my case i'm actually using a single form that i am using to allow a user
to edit their information. however, they may want to reload that same form
more than once. 

the code you showed me helped me to get the form to show up and i got the
xhrPost working. now, my problem is that if i attempt to view this form a
second time, the form shows up but the dojo/dijit functionality doesn't
appear - and i do see the error you mentioned:

An error occurred: Error: Tried to register widget with id==lineItemSize but
that id is already registered

can someone help me figure out a way to load the same form more than once
without reloading the entire page?? :)

thanks in advance


MarkDNA wrote:
> 
> 
> mapes911 wrote:
>> 
>> HI,
>> 
>> Question about not reusing a variable name. You're talking about the name
>> you give the actual dijit element right? Like for example.
>> 
>>      $this->addElement('ValidationTextBox', 'name', array(
>>             'validators' => array(
>>                 array('StringLength', false, array(0, 255)),
>>             ),
>>             'label'          => 'Name:',
>>             'required'       => true,
>>             'invalidMessage' => 'ERROR MESSAGE HERE',
>>             'trim'      => true,
>>         ));
>> 
> 
> Actually, in this case I'm creating the elements in the view script. I
> have several line items to loop through, so I'm creating a form for each.
> I guess I could create that in the controller file, but I'm not sure how,
> and this works too. When I'm talking about adding microtime, I'm talking
> about when there are multiple (identical) forms on the same page and you
> create the elements like the following:
> 
> <td><?=$this->validationTextBox("lineItemQuantity-".$item["lineItemID"].microtime(true),
> $item["lineItemQuantity"], array( "required"=>"true",
> 'regExp'=>'[\d]+','style'=>'width: 50px'))?></td>
> 
> That may seem to be obvious in hindsight, but I hadn't realized at the
> time that this style of dijit creation used the "name" attribute for the
> "id" attribute too. Since you can't have more than one element with the
> same id in an XHTML doc, this workaround is needed. I scrape off the
> microtime in the action the data is posted to. In my xhr action, I set the
> following when I return the new list of line items:
> 
>       $this->_helper->layout->disableLayout();
>       Zend_Dojo::enableView($this->view);
>       Zend_Dojo_View_Helper_Dojo::setUseDeclarative();
>       $this->render('editLineItemsPartial');
> 
> HTH,
> --Mark G.
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Dijit-elements-and-xhrPost-tp20276334p22337684.html
Sent from the Zend Framework mailing list archive at Nabble.com.

Reply via email to