Ajax成功函数显示" 1"在空白页的左上角而不是刷新div

时间:2016-09-13 10:16:45

标签: javascript jquery yii

我正在开发一个yii2应用程序。我从Bootstrap模式弹出窗口中选择数据并提交到我有插入查询的控制器操作。从模态popupt提交数据后,提交数据显示一个白页,其中包含" 1"在页面的左上角,而不是仅关闭弹出窗口并刷新div但是当我检入数据库时​​,数据被插入。

我的代码部分: 弹出电话

 <a class="btn btn-danger" data-toggle="modal"  data-target="#modalgroup">+Add</a> 

模态弹出代码:

<?php
 Modal::begin([

'id' => 'modalgroup',
'size' => '',
'header'=>'<h3>Select Groups</h3>']);
 $mymodel = new \app\models\Contact();
 echo $this->render('group', ['mymodel'=>$mymodel]);
 Modal::end();
 ?>

弹出窗体

<?php
$form = ActiveForm::begin(['id'=>'select_group']);?>


 <div class="row" style="height: auto;">


<div class="col-sm-8">
    <div class="form-group form-group-sm field-profile-name">
        <?php

        $wishmodel = new GroupTran();
        $wish=Group::find()->all();
        $options =ArrayHelper::map($wish,'group_id','group_name');
        echo $form->field($model, 'group_id')->checkboxList($options)->label('Select Groups').'<br>';
        ?>
        </div>
    </div>
</div>

<div class="form-group">
<?= Html::submitButton('Select', ['class' => 'btn btn-primary']) ?>
</div>
<?php
ActiveForm::end();


?>

我的Js:

    $url= Yii::$app->request->baseUrl.'/contact/group';   

    $( "#select_group" ).on('beforeSubmit', function(e) {
   e.preventDefault();
   var form= $(this);
      $.ajax({
        type: 'post',
        url: '{$url}',
        data: form.serialize(),
        success: function () {
    $(form).trigger("reset");
      $('#modalgroup').modal('hide');   
         $('#groupdiv').load(window.location.href + '#groupdiv');   
    //$("#groupdiv").load(location.href+" #groupdiv>*");   

        }
      });
      return false;
    });

我的控制器动作

public function actionGroup()
{
    $model = new Groups();
    $post= Yii::$app->request->post();          
    $connection = \Yii::$app->db;
    foreach(($post['GroupTran']['group_id']) as $data){    
        $wishdata = Groups::find()->where(['group_id'=>$data])->all();
        if(!$wishdata)
        $connection->createCommand()->insert('tbl_groups',['group_id'=>$data])->execute();
    }

    return true;
}

请帮助

1 个答案:

答案 0 :(得分:1)

您的on表单即beforeSubmit的事件无效。尝试将其替换为submit

因此,form正在提交。

替换$( "#select_group" ).on('beforeSubmit', function(e) {

$( "#select_group" ).on('submit', function(e) {