模态窗口yii2中的Ajax验证数据
Ajax validation data in modal window yii2
我的主视图中有模式窗口
<?php
Modal::begin([
'header' => 'Log in or register or restore password',
'id' => 'modal',
'size' => 'modal-lg',
]);
echo "<div id='modalContent'></div>";
Modal::end();
?>
我有额外的视图在主视图的模式窗口中渲染它
<div class="row">
<div class="col-lg-5">
<?php $form = ActiveForm::begin(['id' => 'login-form']); ?>
<?= $form->field($login_model, 'username')->textInput() ?>
<?= $form->field($login_model, 'password')->passwordInput() ?>
<div class="form-group">
<?= Html::submitButton('Login', ['class' => 'btn btn-primary', 'name' => 'login-button', 'data-pjax' => 1]) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
</div>
使用此
'frontend'assets'OverviewAsset::register($this);
我注册了我的js代码
$(document).ready(function() {
$(function() {
var id_user_tag = 'id_user';
$(document).on('click','[' + id_user_tag + ']', function () {
var id_user = this.getAttribute(id_user_tag);
$.ajax({
url: '/client/is-full-page-accessed',
type: 'post',
data: {
id_user: id_user
},
success: function (response) {
if(response) {
window.location = 'full-page?id_user=' + id_user;
} else {
$.get(
'/client/log-in',
function (data) {
$('#modal').modal('show')
.find('#modalContent')
.html(data);
}
);
}
}
});
});
});});
我有控制器
public function actionLogIn()
{
if (!'Yii::$app->user->isGuest) {
return $this->goHome();
}
$password_reset_request_model = new PasswordResetRequestForm();
if ($password_reset_request_model->load(Yii::$app->request->post()) && $password_reset_request_model->validate()) {
if ($password_reset_request_model->sendEmail()) {
Yii::$app->session->setFlash('success', 'Check your email for further instructions.');
return $this->goHome();
} else {
Yii::$app->session->setFlash('error', 'Sorry, we are unable to reset password for email provided.');
}
}
$login_model = new LoginForm();
if ($login_model->load(Yii::$app->request->post()) && $login_model->login()) {
return $this->goBack();
} else {
$model['login'] = $login_model;
return $this->renderAjax('log-in', ['login_model' => $login_model, 'password_reset_request_model' => $password_reset_request_model]);
}
}
所以最后我有
我点击一些按钮,如果我没有登录,我必须打开我的模式窗口,并获得我在控制器中渲染的附加视图。它是有效的,但当我在模式窗口中放入错误的数据时,我的页面会转到这个/client/log-in
URL。但我想在模式窗口中显示我的无效数据。
怎么做?
如果需要其他信息,请告诉我。
再次抱歉。我的错。我只需要在上填写我的表格
<?php yii'widgets'Pjax::begin(['id' => 'log-in']) ?>
<?php $form = ActiveForm::begin(['id' => 'login-form', 'options' => ['data-pjax' => true]]); ?>
<?php yii'widgets'Pjax::end() ?>
这就是我所做的一切改变。文档,文档和一个又一个文档!
如果您使用kartiks detailView,但无法理解为什么数据pjax-atribute不适用。以下是正确的语法:
'formOptions' => ['options' => ['data-pjax' => true]],
相关文章:
- 使用html中的外部javascript进行数据验证
- JS验证ajax返回的html中的表单数据
- 自定义验证并格式化从数据数据库返回的响应-BEGINNER
- 如何在使用ajax提交的codeigniter中使用form_validation验证表单数据
- 正则表达式(JavaScript),用于创建数字必须大于x的数据验证
- 验证数据并将其保存到数据库以供实时应用程序使用的正确方法
- 模态窗口yii2中的Ajax验证数据
- 来自第三方身份验证的 Firebase 身份验证数据在移动 safari iOS8 中始终为空
- 验证数据是否已在数据库中,具有更多输入相同的类
- 验证数据 jQuery Handsontable 输入
- D3:如何在数据绑定期间验证数据
- Validation jQuery未正确验证数据
- 如何在Azure移动服务中使用使用逻辑验证数据
- 表单验证——jQuery验证是否足够,以及如何在PHP中巧妙地验证数据
- 向firebase数据库添加身份验证数据
- 单击按钮,我想验证数据,如果为真,我想要删除确认对话框.这可能吗?
- web和jvm之间的Firebase身份验证数据不匹配
- Jquery验证数据
- 如何通过编辑时验证数据是否相同来更改按钮文本
- 使用JS Regex验证数据