[Risolto]Richiamare Un Metodo Del Controller Attraverso Ajax, È Possibile?

Salve ragazzi vorrei sapere se fosse possibile richiamare un medoto del controller (quindi vederlo come un ’ action) attraverso ajax ovvero :


<script>

                jQuery('#PrefixarchivioPratiche_anno').change(function() {

                    jQuery.ajax({

                         type: "POST",

                         url:"calcolo_collocazione",

                         data:{data:jQuery(this).val()}                        

                    }).success(function() {jQuery('#PrefixarchivioPratiche_collocazione').val($cal); })

               });

ma mi restituisce NetworkError: 404 Not Found.

Come url mettici


<?php 

echo Yii::app()->createUrl('[modulo]/controller/calcolo_collocazione'); 

?>

Esatto, provo a riscriverlo ma solo per renderlo più chiaro:




jQuery('#PrefixarchivioPratiche_anno').change(function() {

    jQuery.ajax({

        type: "POST",

        url:"<?php echo Yii::app()->createUrl('[modulo]/controller/calcolo_collocazione'); ?>",

        data:{data:jQuery(this).val()}

    }).success(function() {jQuery('#PrefixarchivioPratiche_collocazione').val($cal); })

});



tutto come prima ho notato anche nel metodo calcolo_collocazione non avevo aggiunto il prefisso action ed ora va in eccezione:

PrefixarchivioPraticheController and its behaviors do not have a method or closure named "calcolo_collocazione

Probabilmente nella action stai facendo $this->calcolo_collocazione(), chiamando un metodo che non esiste.

zaccaria la sto tendo di richiamare dall’url ovvero.


url:Yii::app()->createUrl(\'controllers/nomeController/calcolo_collocazione

avevi ragione zaccaria non avevo commentato un $this->calcolo_collocazione()

grazie mille