Javascript 如何在我的js文件之前运行yii表单验证
我使用资产向我的应用程序添加了一些js和css文件。 我的问题是,我想在用户单击submit按钮时运行一些函数,但只有在yii validator检查无错误后才能运行。 现在我的函数在yii验证器之前运行Javascript 如何在我的js文件之前运行yii表单验证,javascript,jquery,yii2,Javascript,Jquery,Yii2,我使用资产向我的应用程序添加了一些js和css文件。 我的问题是,我想在用户单击submit按钮时运行一些函数,但只有在yii validator检查无错误后才能运行。 现在我的函数在yii验证器之前运行 如何执行此操作?在所有验证之后和提交之前,将触发beforeSubmit事件: $('#formid').on('beforeSubmit', function(e) { // Do your things if (cannotSubmitBecauseOfProblem)
如何执行此操作?在所有验证之后和提交之前,将触发
beforeSubmit
事件:
$('#formid').on('beforeSubmit', function(e) {
// Do your things
if (cannotSubmitBecauseOfProblem)
e.result = false; // Prevent form submission.
}
在所有验证之后和提交之前,将触发
beforeSubmit
事件:
$('#formid').on('beforeSubmit', function(e) {
// Do your things
if (cannotSubmitBecauseOfProblem)
e.result = false; // Prevent form submission.
}
您可以使用
afterValidateAttribute
。请尝试以下操作:
$position = View::POS_END;
$validatejs = <<< JS
$('#formID').on('afterValidateAttribute', function(event, attribute, messages) {
if(messages.length == 0){
// No errors ...
}
});
JS;
$this->registerJs($validatejs, $position);
您可以使用
afterValidateAttribute
。请尝试以下操作:
$position = View::POS_END;
$validatejs = <<< JS
$('#formID').on('afterValidateAttribute', function(event, attribute, messages) {
if(messages.length == 0){
// No errors ...
}
});
JS;
$this->registerJs($validatejs, $position);
你能给我们看一些代码吗?其他人回答。无论如何谢谢你!你能给我们看一些代码吗?其他人回答。无论如何谢谢你!嗨,谢谢,但我试着做的是加载轮子,如果我做了你发布的事情,在我开始填写表格后它就开始了。为什么?答案更新了。您可以使用上述任何适合您的方法。我认为您应该在验证后或提交前尝试:)您好,谢谢,但我尝试做的是加载轮子,如果我做了您在我开始填写表单后立即发布的操作。为什么?答案更新了。您可以使用上述任何适合您的方法。我认为您应该在验证之后或提交事件之前尝试:)