Yii Framework Forum: [Risolto] Afterdelete Problema - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

[Risolto] Afterdelete Problema evento che parte al momento del click invece che "after"... Rate Topic: -----

#1 User is offline   tune 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 75
  • Joined: 27-March 12

Posted 10 January 2013 - 04:42 AM

Ciao ragazzi, ho un problema con l'afterDelete.
nella mia applicazione vorrei semplicemente refreshare una selectBox dopo aver cancellato un elemento (da una CGridView).

ecco il mio "afterDelete", ovviamente per ora faccio un console.info di test...
					....'class'				=>'CButtonColumn',
					'template'			=>'{view}{update}{delete}',
					'deleteConfirmation'=>'Sicuro di volere eliminare il software selezionato?',
					'afterDelete'		=>"function(link,success,data){
											console.info(link,success,data);}",
					'buttons'			=>array(...


il flusso che mi sarei aspettato, dal momento del click in poi:
  • click su "delete"
  • parte l'eventuale "deleteConfirmation" (e infatti parte)
  • cancellazione del record selezionato
  • parte "afterDelete" esegue le operazioni che gli vengono impartite, nel mio caso un test di "console.info"
solo che nel mio caso invece l'afterDelete parte al momento del click, perchè?

appena clicco praticamente, parte il "deleteConfirmation" e subito dopo l'"afterDelete"...
infatti nella "function" di afterDelete il "data" è null...
inoltre sul button Delete non è impostato 'click' ovviamente...

Grazie in anticipo!
0

#2 User is offline   tune 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 75
  • Joined: 27-March 12

Posted 10 January 2013 - 04:56 AM

aggiungo una info:
possibile che l'afterDelete non funzioni perchè nella mia applicazione,
ogni "delete" in realtà è una cancellazione logica andando a scaturire in un "update" (dove viene impostato un flag cancellato 1/0)
e quindi non c'è una vera e propria cancellazione fisica?
0

#3 User is offline   st4nny 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 325
  • Joined: 10-April 12

Posted 10 January 2013 - 06:44 AM

l'afterDelete funziona correttamente. Il problema è che nel tuo caso "data"
è vuoto perchè sicuramente la tua ActionDelete non restituisce niente.

se vuoi un consiglio metti la select che vuoi refreshare in un renderPartial nella view.
<div id="select">
<?php $this->renderPartial('_select',array('model'=>$model)); ?>
</div>


nell'actionDelete fai una cosa del genere, visto che la cancellazione è logica:
if($model->save()){
	echo $this->renderPartial('view/_select',array('model'=>$model),true,true);
}


nell'afterDelete:
'afterDelete'=>'function(link,success,data){ if(success) $("#select").html(data); }',

0

#4 User is offline   tune 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 75
  • Joined: 27-March 12

Posted 10 January 2013 - 09:19 AM

Grazie st4nny,
leggendo il tuo consiglio ho inserito il print dell'htm della select aggiornato
proprio nell'action che viene chiamata in modo che nella callback refresho il contenuto.

Grazie e alla prossima!
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users