Hola… renderizo en un ajax una tabla de varios registros de un modelo, cuando presiono el submit no realiza ninguna acción y tampoco tira un error. He probado con load multiple pero tampoco obtengo resultados, a continuación les dejo el código para ver si pueden ayudarme.
Hi … I render a table in a ajax several records of a model when I press the submit no action nor an error strip. I tried to load multiple but not get results, then I leave the code to see if they can help.
Código del formulario ajax
<?php
use yii\helpers\Html;
use kartik\widgets\ActiveForm;
use kartik\builder\Form;
?>
<div id="crud-datatable" class="grid-view" data-krajee-grid="kvGridInit_372f9373">
<div class="col-xs-12">
<div class='row'>
<div class='col-sm-12'>
<?php $form = ActiveForm::begin(); ?>
<div id="crud-datatable-container" class="table-responsive kv-grid-container">
<table class="kv-grid-table table table-bordered table-striped table-condensed kv-table-wrap">
<tr>
<th width="15%">
<?php echo "CODIGO"; ?>
</th>
<th width="15%">
<?php echo "DESCRIPCION"; ?>
</th>
<th width="15%">
<?php echo "SOLICITADAS"; ?>
</th>
<th width="5%">
<?php echo "PARCIAL"; ?>
</th>
</tr>
<?php
if (!is_null($model_p) and !empty($model_p)) {
foreach ($model_p as $modelo) {
?>
<tr>
<td>
<?php
echo $form->field($modelo, 'codigo')->textInput(['label'=>'','maxlength' => true, 'id'=>$modelo->id . '-codigo', 'name'=>$modelo->id . '-codigo'])->label(false); ?>
</td>
<td>
<?php
echo $form->field($modelo, 'descripcion')->textInput(['maxlength' => true, 'id'=>$modelo->id . '-descripcion', 'class'=>'descripcion', 'name'=>$modelo->id . '-descripcion'])->label(false);?>
<?php echo Html::hiddenInput('ids', $modelo->id); ?>
</td>
<td>
<?php
echo $form->field($modelo, 'solicitadas')->textInput(['maxlength' => true, 'id'=>$modelo->id . '-solicitadas', 'class'=>'total_cases', 'name'=>$modelo->id . '-solicitadas'])->label(false); ?>
</td>
<td>
<?php
echo $form->field($modelo, 'parcial')->textInput(['maxlength' => true, 'id'=>$modelo->id . '-parcial', 'class'=>'parcial', 'name'=>$modelo->id . '-parcial'])->label(false); ?>
</td>
</tr>
<?php } } ?>
</table>
</div>
</div>
<div class="form-group pull-center">
<?= Html::submitButton(Yii::t('app', 'ENVIAR'), ['class' =>'btn btn-primary', 'name'=>'btnaplicar']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
</div>
</div>
Ahora pondré el código de la acción
Now I will put the action code
public function actionDespacho() {
$id = $_REQUEST['sol'];
$model_p = \common\models\Solicitud::find(['solicitud_id' => $id])->all();
if (Model::loadMultiple($model_p, Yii::$app->request->post())) {
foreach ($model_p as $modelo) {
print_r($modelo);
}
}
}else{
return $this->renderAjax('_parcializar', [
'model_p' => $model_p,
]);
}
}
Gracias
Thanks