2016-04-16 3 views
0

Ich benutze ein ActiveForm in yii2. Nach dem Klicken auf "Senden" -Button habe ich eine folgende GET-Anfrage. Wie kann ich dem Array 'ProjectSearch' vor der Eingabe die benutzerdefinierten Attribute hinzufügen?Yii2. Fügen Sie der GET-Anfrage Attribute hinzu, bevor Sie sie abschicken.

$_GET = [ 
    'r' => 'project/index', 
    'ProjectSearch' => [ 
     'description_' => '', 
     'categories' => '', 
     'moneyrange' => '5,50', 
    ], 
    'sort' => '-price', 
]; 
+0

können Sie das Modell ändern und versteckte Felder in das Formular einbeziehen? können Sie das Modell teilen – Midhun

+0

Das Modell ist ein Standart SearchModel mit gii generiert. Ich kann ein Attribut zum Modell hinzufügen und es an versteckte Eingabe anhängen. Eigentlich muss ich das Attribut 'sort' in ProjectSearch der GET-Anfrage einfügen. Aber ich kann es nicht direkt anhängen (ich verwende ButtonDropdown, um Sortierlinks zu rendern und es kann nicht mit dem Modell verwendet werden). Gibt es eine Lösung, außer ein verstecktes Feld zu erstellen und jquery zu verwenden, um den Wert zu ändern? – Dmytro

+1

können Sie den Wert vom Controller ändern? nachdem Sie die Daten gesendet haben und bevor Sie die Daten an die Suchfunktion übergeben? – Midhun

Antwort

0

Sie sollten in yii.activeform.js suchen, um mehr über die Ereignisse zu wissen, mit dem Sie die oben genannten Aufgabe zu tun, helfen kann. Wie hier können Sie vor dem Senden:

$('#contact-form').on('beforeSubmit', function (e) { 
//Add your part of code! 
} 
return true; 
});