Heim >php教程 >PHP开发 >Yii2-Methode zum automatischen Abrufen von Formulardaten basierend auf Ajax

Yii2-Methode zum automatischen Abrufen von Formulardaten basierend auf Ajax

高洛峰
高洛峰Original
2016-12-23 16:48:111755Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie Yii2 automatisch Formulardaten auf Basis von Ajax erhält. Teilen Sie es als Referenz mit allen:

Die Tabellenstruktur ist wie folgt: Das Modell und die anderen Informationen Die beiden Tabellen werden mit GII generiert

yii2advanced.customers table

customer_id:int(11)
customer_name:varchar(100)
zip_code:varchar(20)
Stadt:varchar(100)
Provinz:varchar(100)

yii2advanced.locations Tabelle

Standort-ID:int(11)
Postleitzahl:varchar(20)
Stadt :varchar(100)
Provinz: varchar(100)

Hier werden die der Postleitzahl entsprechenden Stadt- und Provinzinformationen automatisch in das Formular eingetragen, nachdem der Kunde die Postleitzahl ausgewählt hat

Implementierung Methode

Zuerst müssen Sie es in Locations steuern. Fügen Sie eine Methode im Prozessor hinzu, die die entsprechenden Standortinformationen über die erhaltene zip_id abrufen kann

public function actionGetCityProvince($zipId)
{
  $location = Locations::findOne($zipId);
  echo Json::encode($location);
}

und überwachen Sie dann die Auswahl über JS. Wenn sich die Auswahl ändert, verwenden Sie die get-Methode von jQuery, um die entsprechenden Informationen abzurufen, und verwenden Sie die attr-Methode von jQuery, um den Wert von Stadt und Provinz festzulegen

JS Code, befindet sich in der Formularansicht des Kunden

#zipCode ist die ID des ausgewählten

<?php
$script = <<<JS
jQuery(&#39;#zipCode&#39;).change(function(){
  var zipId = $(this).val();
  jQuery.get(&#39;index.php?r=locations/get-city-province&#39;,{zipId:zipId},function(data){
    var data = jQuery.parseJSON(data);
    jQuery("#customers-city").attr("value",data.city);
    jQuery("#customers-province").attr("value",data.province);
  });
  
});
JS;
$this->registerJs($script);
?>

Ich hoffe, dieser Artikel wird hilfreich sein für jedermanns PHP-Programmdesign basierend auf dem Yii-Framework.

Weitere Artikel zur Methode von Yii2 zum automatischen Abrufen von Formulardaten auf Basis von Ajax finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn