Heim > php教程 > PHP开发 > Ajax-Übermittlungsmethode der Yii2.0 ActiveForm-Komponente

Ajax-Übermittlungsmethode der Yii2.0 ActiveForm-Komponente

黄舟
Freigeben: 2017-01-03 09:40:06
Original
1478 Leute haben es durchsucht

Wie übermittelt ActiveForm asynchron?

1. Konfigurieren Sie zunächst die folgenden Attribute in der ActiveForm der Ansichtsebene

),           //此处为请求地址 Url用法查看手册
    'enableAjaxValidation' => true,
        'validationUrl' => Url::to(['post/validate']),     //数据异步校验
]);

2.配置好表单属性之后,在控制器中添加对应的方法

validateUrl对应的方法

//该方法是异步校验字段,输入框失去焦点之后自动会自动请求改地址
public function actionValidate(){
    $model = new PostModel();
    if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {        
        Yii::$app->response->format = Response::FORMAT_JSON;        
        return ActiveForm::validate($model);
    }
}

action对应的方法

//该方法是数据保存方法
public function actionSave()
{
    $model = new PostCatModel();
    if ($model->load(Yii::$app->request->post())) {
        Yii::$app->response->format = Response::FORMAT_JSON;
        return ['status' => $model->save()];
    }        
}
Nach dem Login kopieren

Darüber hinaus müssen Sie auch ein übermitteltes js schreiben

[code=php;toolbar:false">//此处点击按钮提交数据的jquery
$('.btn').click(function () {
$.ajax({
url: "/post/save.html",
type: "POST",
dataType: "json",
data: $('form').serialize(),
success: function(Data) {
if(Data.status)
alert('保存成功');
else
alert('保存失败')
},
error: function() {
alert('网络错误!');
}
});
return false;
});
Nach dem Login kopieren

Hinweis : Der entsprechende Namespace in actionSave muss hinzugefügt werden, andernfalls wird ein Fehler gemeldet

Zum Beispiel Response und ActiveForm

use yiiwebResponse;
use yiiootstrapActiveForm;[/code]
Nach dem Login kopieren

Das Obige ist die asynchrone Übermittlungsmethode entsprechend ActiveForm

Das Obige ist die Ajax-Übermittlungsmethode der Yii2.0 ActiveForm-Komponente. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (m.sbmmt.com)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage