如何在yii2中提交表单时调用函数?

时间:2017-12-08 21:06:09

标签: javascript yii2

我希望在发送和验证表单时调用函数,但我不确定它是如何工作的。

这是我的代码:

echo '<div class="form-group">';
if ($model->isNewRecord) {
    echo kartik\helpers\Html::submitButton('Create', [
        'class' => 'btn btn-success',
        'data-confirm' => 'send data?'
    ]);

2 个答案:

答案 0 :(得分:1)

如果您正在寻找JavaScript事件,即在验证表单(但尚未提交)之后运行,您可以尝试运行以下内容:

$('#contact-form').on('beforeSubmit', function (e) {
    if (!confirm("Everything is correct. Submit?")) {
        return false;
    }
    return true;
});

您可以在community cookbook by Samdark and contributors here中找到ActiveForm发出的更多信息和事件。

如果您需要在提交后运行JS代码,那么您必须实现AJAX请求,然后处理返回的响应。您可以从修改上面给出的代码开始快速入门(不要忘记根据您的情况更改jQuery选择器)。

在StackOverflow上提交下一个问题之前,尝试提供有关您想要实现的结果和初始任务的更多信息。祝你好运!

答案 1 :(得分:0)

在您的控制器中

public function actionCreate(){

    $model = new YourModel();
    if(($model->load(Yii::$app->request->post()) && $model->validate()){
         //call your function here
    }
}