php - una - yii2 html::a
cómo ejecutar el widget yii cuando se hace clic en el botón (1)
Tengo este widget:
<?php
class Search extends CWidget
{
public $dataProvider = null;
public function init()
{
$criteria = new CDbCriteria();
if ( isset($_GET[''file'']) ) {
$criteria->compare(''fileName'', $_GET[''file''], true, ''OR'');
$criteria->compare(''tags'', $_GET[''file''], true, ''OR'');
}
$this->dataProvider = new CActiveDataProvider("Files", array(
''criteria'' => $criteria,
//''countCriteria'' => $criteria,
''pagination''=>array(
// results per page
''pageSize''=>1,
),
));
}
public function run(){
$this->render(''site/result'', array(
''dataProvider'' => $this->dataProvider,
''pages'' => $this->dataProvider->pagination,
));
}
}
?>
cómo puedo ejecutar este widget solo cuando se hace clic en el botón de búsqueda, y cómo ver su resultado en la vista reuslt
que se encuentra en el sitio de la carpeta
Tal vez no te haya entendido bien, pero creo que tienes un poco de confusión sobre el widget. Evita hacer una
larga respuesta, hice un modelo en la parte inferior
Pregunta 1: ¿Cómo puedo ejecutar este widget solo cuando se hace clic en el botón de búsqueda?
La idea es colocar el contenido del widget en div oculto y luego agregar un script jQuery para mostrarlo luego de hacer clic en el botón de búsqueda.
<div id=''search-result'' style="display:none"><?php $this->widget(...) ?></div>
<script>
$(''#search-button-id'').click({
// do something
$(''#search-result'').show();
})</script>
Pregunta 2: ¿cómo ver su resultado en la vista reutilizar que se encuentra en el sitio de la carpeta?
Imao, te recomiendo que no hagas esto. El widget es una parte independiente, puede usarlo para muchos propósitos específicos y muchas ubicaciones de su proyecto, de modo que simplemente coloque una vista simple para que el widget lo represente por sí solo, en lugar de intentar renderizar una vista fuera del alcance del widget. Debería verse como a continuación
/your-app/protected/extensions/widgets/search/Search.php
/your-app/protected/extensions/widgets/search/views/result.php // view for rendering