为yii2弹出模态窗口的ActiveFormAjax异步验证形式
在我们前面关于如何使用模态和yii2 GridView列表更新操作如何使用模态yii2模态,以为已经结束,可以开始一个新的话题,但实际问题往往超乎想象,弹出模态提交表单是如何验证问题又来了,又!首先,让我们撇开情态。让我们如何yii2 ActiveForm提交表单Ajax方式的一个简单的解释。这也是我们今天讨论的主题。情态动词真的没什么要说的,如果后面有,我会把它换回来。
在yii2,ActiveForm并默认情况下,客户端验证,但形式提交不刷新,通常表单的提交后出现的页面将被刷新。如果你想打开一个非刷新模式,刚开始enableajaxvalidation在如下的形式,
< PHP美元形式= ActiveForm::开始(
ID = > 'form-id,
'enableAjaxValidation'= > true,
}
>);
注意,ID和enableajaxvalidation不能少于一。
然后看看服务器的实现
如果(元模型->负荷(Yii::应用程序->请求->美元后())){
Yii::$程序->响应->格式= Yii 网络回应::format_json;
如果(合误差= 一工具 ActiveForm::验证(元模型)){
返回$错误;
{人}
如果($ < >保存(false)){
返回这个->重定向({ 'index});
}
}
}
返回这个->渲染('创建,
模型= $模型,
});
这样的yii2异步刷新提交表单是简单的实现!
事实上,以下并不是说不重要,主要是一些懒惰的人参考。聪明人看标题应该明白如何解决模态提交表单通过形式的问题。
为了与模态兼容,请注意我们所谈论的是兼容性而不是实现,我们对程序做了一些细微的改动,只做一个参考。
如果(元模型->负荷(Yii::应用程序->请求->美元后())){
如果($ < >保存()){
如果(Yii::应用程序->请求->美元isajax){
Yii::$程序->响应->格式= 一网络回应::format_json;
{ } =真''成功的回报;
}
返回这个->重定向({ 'index});
{人}
如果(Yii::应用程序->请求->美元isajax){
Yii::$程序->响应->格式= 一网络回应::format_json;
返回一工具 ActiveForm::验证(元模型);
}
}
}
如果(Yii::应用程序->请求->美元isajax){
返回这个-> renderajax('创建,
模型= $模型,
});
{人}
返回这个->渲染('创建,
模型= $模型,
});
}
以上是yii2弹出模态ActiveForm Ajax表单验证Xiaobi介绍的相关知识,希望对大家有帮助。如果你想知道更多,请注意网站。