Javascript 如何手动进行正确的yii2验证?
它应该在页面中列出用户列表,打开模式窗口进行编辑。此页面不应更新。在AJAX填充数据之后,单击该链接将打开一个模态窗口ActiveForm。我现在想通过验证,我怎样才能传输它。需要帮助yii.ActiveForms.js或其他什么吗Javascript 如何手动进行正确的yii2验证?,javascript,jquery,yii2,Javascript,Jquery,Yii2,它应该在页面中列出用户列表,打开模式窗口进行编辑。此页面不应更新。在AJAX填充数据之后,单击该链接将打开一个模态窗口ActiveForm。我现在想通过验证,我怎样才能传输它。需要帮助yii.ActiveForms.js或其他什么吗 public function actionEditUser($id) { if (!Yii::$app->user->isGuest && Yii::$app->user->identity->role == 2
public function actionEditUser($id) {
if (!Yii::$app->user->isGuest && Yii::$app->user->identity->role == 2) {
$model = new EditUserForm();
$model->id = (int) $id;
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($model);
}
if ($model->load(Yii::$app->request->post()) && $model->updateUser()) {
return Yii::$app->response->redirect(Url::to(Yii::$app->request->referrer, true));
} else {
$user = $this->findModel($id);
$model->login = $user->login;
$model->email = $user->email;
$model->fullName = $user->full_name;
return $this->renderAjax('editModalUserForm', [
'model' => $model,
]);
}
}
return Yii::$app->response->redirect(Url::to('site/sign-in', true));
}
InitEditUser:函数(事件){
var target=$(event.target);
var id=target.attr('id');
var url='http://'+window.location.hostname+'/users/'+id;
var urlGet=window.location.href;
$.ajax({
键入:“GET”,
url:urlGet,
数据:“id=”+id,
成功:函数(数据、文本状态、jqXHR){
console.log('ok');
},
错误:函数(jqXHR、textStatus、errorshown){
}
});
$('#editUser').modal('show');
$.ajax({
键入:“GET”,
url:url,
成功:函数(数据、文本状态、jqXHR){
控制台日志(数据);
$('#editUserInput').val(data.login);
$('#editUserFullNameInput').val(data.full_name);
$('editUserEmailInput').val(data.email);
$('#editUserForm')。在('beforeSubmit',函数(){
控制台日志(“a”);
返回false;
});
$('#editUserForm')。在('afterValidate',函数(){
控制台日志(“b”);
});
},
错误:函数(jqXHR、textStatus、errorshown){
}
});
},
};
InitEditUser:函数(事件){
var target=$(event.target);
var id=target.attr('id');
var url='http://'+window.location.hostname+'/users/'+id;
var urlGet=window.location.href;
$.ajax({
键入:“GET”,
url:urlGet,
数据:“id=”+id,
成功:函数(数据、文本状态、jqXHR){
console.log('ok');
},
错误:函数(jqXHR、textStatus、errorshown){
}
}))
},,
};
$('#editUser').modal('show');
$.ajax({
type: 'GET',
url: url,
success: function (data, textStatus, jqXHR) {
console.log(data);
$('#editUserInput').val(data.login);
$('#editUserFullNameInput').val(data.full_name);
$('#editUserEmailInput').val(data.email);
$('#editUserForm').on('beforeSubmit', function () {
console.log("a");
return false;
});
$('#editUserForm').on('afterValidate', function () {
console.log("b");
});
},
error: function (jqXHR, textStatus, errorThrown) {
}
});