CGridview filtre au chargement de la page avec pré définir la valeur dans le champ de recherche
Je travaille avec le Yii framework.
J'ai défini une valeur dans l'un de mes cgridview champs de filtre à l'aide de:
Voici mon jQuery pour affecter une valeur à la searchfield:
$('#gridviewid').find('input[type=text],textarea,select').filter(':visible:first').val('".$_GET['value']."');
Et voici mon PHP pour appeler le cgridview:
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'bills-grid',
'dataProvider'=>$dataProvider,
'filter'=>$model,
'cssFile'=>Yii::app()->baseUrl . '/css/gridview.css',
'pager'=>array(
'class'=>'AjaxList',
'maxButtonCount'=>25,
'header'=>''
),
'columns' => $dialog->columns(),
'template'=>"<div class=\"tools\">".$dialog->link()." ".CHtml::link($xcel.' Export to excel', array('ExcelAll'))."</div><br />{items}{summary}<div class=\"pager-fix\">{pager}</div>",));
La valeur s'affiche dans le champ de recherche et mon cgridview fonctionne correctement sans aucun problème, mais je suis incapable de déclencher la cgridview pour actualiser ou de filtre. Personne ne sait qui pour déclencher la cgridview de filtre après le chargement de la page avec une valeur prédéfinie?
Toute aide serait grandement appréciée et s'il vous plaît laissez-moi savoir si vous avez besoin d'informations supplémentaires.
Merci.
Merci de poster du code
OriginalL'auteur bjtilley | 2012-05-10
Vous devez vous connecter pour publier un commentaire.
Vous pouvez résoudre le problème sans aucune modification de code côté client. Dans votre contrôleur de l'action il suffit de régler la valeur par défaut pour l'attribut comme indiqué ci-dessous
OriginalL'auteur dInGd0nG
Ont un look à la 'valeur par défaut' action index qui gii génère:
Donc, si vous ajoutez une ligne comme:
$model->attribute = 'test';
, vous avez terminé. "attribut" est bien sûr l'attribut qui doit avoir la valeur par défaut valeur de filtre (dans ce cas, la valeur est 'test') :). Ainsi, votre code ressemble à ceci:Bien sûr, vous êtes attribut aura un test de valeur (à filtre) mis en place aussi longtemps que vous ne tapez rien dans son champ de filtre. J'espère que c'est ce que vous cherchez. Votre filtre doit travailler comme d'habitude.
Désolé pour mon mauvais anglais 🙂
Ce qui concerne
OriginalL'auteur pere_
Vous pouvez utiliser Yii mise à jour:
C'est de cette façon que je le fais, il suffit de changer l'URL, il doit être le même contrôleur de l'action de la gridview et de modifier les paramètres d'URL pour la structure représentée dans la il y, devrait être comme Factures[attribut]=valeur.
L'utilisation de firebug et de vérifier quelles informations (url params) sont envoyés lors de l'utilisation de filtres (pas à partir de la méthode que je vous ai donné) et d'envoyer le même OBTENIR des informations plus variables que je vous ai donné la réponse.
OriginalL'auteur Skatox