>  기사  >  백엔드 개발  >  yii2 ActiveForm 表单怎么ajax提交

yii2 ActiveForm 表单怎么ajax提交

WBOY
WBOY원래의
2016-06-06 20:17:441473검색

yii2 ActiveForm 有什么方法可以直接ajax提交?而不是自己用jq写代码去提交

<code>
//view的代码
<?php $form = ActiveForm::begin([
        'action' => ['/admin/admin/adminadd'],
        'id' => 'login-form',
        'options' => ['class' => 'form-horizontal'],
        'fieldConfig' => [
                'template' => "{label}\n<div class='\"col-lg-5\"'>{input}</div>\n<div class='\"col-lg-5\"'>{error}</div>",
                'labelOptions' => ['class' => 'col-lg-2 control-label'],
        ],   
    ]); ?>
        
        = $form->field($Admin, 'username');?>
        = $form->field($Admin, 'password')->passwordInput();?>
        = Html::submitButton('添加',['class' => 'btn btn-success']); ?>

    <?php ActiveForm::end(); ?>
</code>

还有提交完,控制器里面怎么接收?

回复内容:

yii2 ActiveForm 有什么方法可以直接ajax提交?而不是自己用jq写代码去提交

<code>
//view的代码
<?php $form = ActiveForm::begin([
        'action' => ['/admin/admin/adminadd'],
        'id' => 'login-form',
        'options' => ['class' => 'form-horizontal'],
        'fieldConfig' => [
                'template' => "{label}\n<div class='\"col-lg-5\"'>{input}</div>\n<div class='\"col-lg-5\"'>{error}</div>",
                'labelOptions' => ['class' => 'col-lg-2 control-label'],
        ],   
    ]); ?>
        
        = $form->field($Admin, 'username');?>
        = $form->field($Admin, 'password')->passwordInput();?>
        = Html::submitButton('添加',['class' => 'btn btn-success']); ?>

    <?php ActiveForm::end(); ?>
</code>

还有提交完,控制器里面怎么接收?

我是这么做的:https://github.com/lichunqiang/yii2-ajaxform

yii2封装了ajax + pushstate,在Pjax类中,你直接使用就行了哦

Pjax::begin();

中间为你的ActiveForm

Pjax::end();

这样不仅仅是ajax提交form,url还会刷新,比你自己实现ajax要好得多吧,还简单。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.