Is There Ajaxsubmitbutton In Yii2?

In Yii 1.x there is CHtml::ajaxSubmitButton that is very useful. If I’m not wrong, I see there is none in Yii2. So, is there any other work around for this?

No. Workaround is to write a line of JS yourself.

It’s really not a problem, maybe I will rephrase… The problem actually is that I can’t validate the form using validateOnSubmit in this case. I want to check that everything is OK and only then submit the form via ajax. Can I fire validation before sending the form in ajax?

For instance, is it possible to make the validation before submitting in this example:





                                type: 'POST',


                                data: $('.comment-form form').serializeArray(),

                                success: function (data) {



                                error: function (XMLHttpRequest, textStatus, errorThrown) {




                       return false;



  yii\base\View::POS_END, 'comment-form');


<div class="comment-form">

<?php $form = ActiveForm::begin(['enableAjaxValidation'=>true,



                <?= $form->field($model, 'content')->textarea(['rows' => 6]) ?>

		<div class="form-group">

			<?= Html::submitButton('Send', ['class' => 'btn main-form-btn']) ?>


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


Hey check this out. This works well for me. No need of extra steps.

<?php $form = ActiveForm::begin([

	'action' => ['create'],

	'enableAjaxValidation' = false,

	'enableClientValidation' = true,

	'beforeSubmit' => "function(form) {


		if($(form).find('.has-error').length) {

			return false;




			url: form.attr('action'),

			type: 'post',

			data: form.serialize(),

			success: function(data) {

				// do something ...




		return false;


]); ?>

This solution does not work:

Exception: Unknown Property

Setting unknown property: yii\bootstrap\ActiveForm::beforeSubmit

The events have been removed from the form - as mentioned you need to write that code in a js file outside of the form definition.

Examples here.