Trable s Ajaxem

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
i.magine
Člen | 81
+
0
-

Potřeboval jsem udělat ajaxový chat na stránkách a tak sem se musel podívat po nette a ajaxu. Každopádně problém je že mi to nevrací žádné fragmenty. Když se kouknu do firebugu píše:
{„test“:„1“,„state“:[]}

  • ten payload je tam jenom na test jestli se vubec neco posila… kazdopadne snippet se nevraci, asi delam neco spatne. Do databaze se vse normalne vlozi a po refreshi se to na strance taky objevi.

šablona:

{snippet chat}
              {if count($messages)>0}

               {foreach $messages as $n=>$row}
					     <strong>{$row->from_username}</strong>

               <span>{$row->text}</span>
               {/foreach}

             {else}
		Žádné zprávy
             {/if}
 {/snippet}

            </div>

            <div id='chat_text' class='item_box'>
            <h3>Zpráva</h3>
            {$chat_form->render('begin')}
					  {$chat_form["chat_message_text"]->control}
					  {$chat_form["chat_submit"]->control}
					  {$chat_form->render('end')}

a presenter:

public function createComponentChatForm($name){
  $form=new AppForm($this, $name);
  $form->addTextarea("chat_message_text", "Zpráva");
  $form->addSubmit("chat_submit", "Odeslat");
  $form->onSubmit[]=array($this, 'chatFormSubmitted');
  return $form;
}

public function chatFormSubmitted($form){
 $this->invalidateControl("chat");
 $this->payload->test="1";
 if ($form["chat_message_text"]->getValue()){
    //Vkladani do databaze
 }
}
i.magine
Člen | 81
+
0
-

paráda, zdá se že to už šlape :-) Díky ;)

Editoval i.magine (4. 1. 2010 21:35)

i.magine
Člen | 81
+
0
-

Ještě jedna věc, která s tím ani moc nesouvisí. Jak bych přidal formuláři id nebo class?

Klokan
Člen | 47
+
0
-

Viz.dokumentace

Jak nastavit HTML elementu <form> další atributy? Metoda getElementPrototype() vrací element v podobě Nette\Web\Html objektu, se kterým se dá snadno pracovat:

$form->getElementPrototype()->id = ‚login-form‘;

i.magine
Člen | 81
+
0
-

Díky

i.magine
Člen | 81
+
0
-

Ahoj,
trable s AJAXEM pořád pokračují, tedka zase obracene:

Všim jsem si že se mi vždycky přenášejí všechny snippety, nechápu jak je to možné, odkomentoval jsem všechny invalidateControl(), ještě jsem radší prohledal celý projekt jestli jsem to někde náhodou nezapomněl, ale pořád se vše přenáší… To mi úplně nejde do hlavy.

Nemá s tím někdo zkušenosti? Díky

iguana007
Člen | 970
+
0
-

Zkus smazat temp … mozna to pomuze

i.magine
Člen | 81
+
0
-

iguana007 – smazal jsem ale nepomohlo… problém přetrvává