Buenas, os explico, tengo una vista que despliega los posteos de un blog, y los comentarios, los comentarios los quiero cargar con ajax
He visto que el ajaxsubmitbutton no pasa por variables POST el formulario, he estado probando y mirando un buen rato y nada.
Tengo una vista
<?php
/* @var $this WebController */
$this->breadcrumbs=array(
'Web',
);
?>
//Desplegamos el item de blog sin problemas
</p>
<div class="clear"></div>
<!--Comentarios-->
<div class="large">
Cometarios
</div>
<div id="ajax">
<?php $this->renderPartial('_comentarios', array('comentarios'=>$comentarios)); ?>
</div>
<!-- ADD COMENT SI ESTAS REGISTRADO -->
<?php if(!Yii::app()->user->isGuest)
{ ?>
<div class="yiiForm">
<?php echo CHtml::beginForm(); ?>
<?php echo CHtml::errorSummary($form); ?>
<div class="simple">
<?php echo CHtml::activeLabel($form,'comentario'); ?>
<?php echo CHtml::activeTextArea($form, 'comentario'); ?>
<?php //echo CHtml::hiddenField($form, 'comentario',array('type'=>"hidden",'value'=>2)); ?>
<br/>
<?php echo CHtml::ajaxSubmitButton(
'Comentar',
Yii::app()->createUrl( 'Web/addcoment'),
array(
'type' =>'POST',
'update' => '#ajax',
'data'=>array('id_item'=>$model->ItemID,'id_user'=>Yii::app()->user->getId()),
),
array(
'href'=>Yii::app()->createUrl( 'Web/addcoment'),
)
); ?>
</div>
<?php echo CHtml::endForm(); ?>
</div>
<?php } ?>
<?php if(Yii::app()->user->isGuest)
{
echo CHtml::encode('Registrate para comentar');
} ?>
Investigando un rato, lo que he conseguido a sido pasar las variables data en POST a web/addcoment
El controlador
public function actionAddcoment()
{
//creamos nuevo formulario
$form = new comentarioForm();
if (isset($_POST['comentarioForm'])) {
echo 'ola';
$form->comentario=$_POST['comentarioForm'];
$comentario= new Comentarios();
$comentario->descripcion = $form->comentario;
$comentario->ItemID = $_POST['ItemID'];
$comentario->idUsuario = $_POST['id_user'];
$comentario->time = date('Y-m-d H:i:s');
//$comentario->save();
}
$item = Item::model()->find("itemID='".$_POST['ItemID']."'");
//PASAR comentarios
$criteria=new CDbCriteria;
//conf criteria a nuestro gusto y creamos comentarios que nos interesa
$this->renderPartial('_comentarios', array('comentarios'=>$comentarios),false,true);
Yii::app()->end();
Problema, no reconoce como he dicho $_POST[‘comentarioForm’], y no se como pasar de la vista al controlador el comentario.
O bien lo monto de otra manera o bien descubro como pasar el comentario a una variable php, aunk tmb he visto
algo como dentro de data ‘valor’=> ‘js:jquery("#id").val()’, que puede funcionar, pero nose como funciona, he probado y falla, error de jquery.
Alguien me puede echar una mano?.
Gracias.