jQuery模式仅在单击

时间:2017-05-07 10:00:03

标签: javascript jquery html ajax modal-dialog

我有一些问题让头脑感觉很沉重...我在这个论坛中搜索了答案,但问题仍未解决。 我的问题是我有一个链接到模态的按钮。当页面第一次刷新时模式打开而按钮单击时。但不是第二次。 我检查了日志和日志说

TypeError: $(...).modal is not a function[Learn More]. 

如果我刷新页面,它只会工作一次,第二次点击按钮,模态不会再次打开...

这是我的按钮HTML视图代码..

<button class="btn btn-info btn-sm btn-labeled" type="button" id="tambahUser" data-toggle = "modal" value="<?= Url::to(['/module/create'],true)?>">

这是我的模态

    <div id="modalSignUpSm" tabindex="-1" role="dialog" class="modal fade">
  <div class="modal-dialog modal-lg">
    <div class="modal-content">
      <div class="modal-header bg-info">
        <button type="button" class="close" data-dismiss="modal" id="tutupModal">
          <span aria-hidden="true">×</span>
          <span class="sr-only">Close</span>
        </button>
        <h4 class="modal-title">Colored Header Modal</h4>
      </div>
      <div class="modal-body">
        <div id="modalContent"></div>
      </div>
    </div>
  </div>
</div>  

这是我的js代码,负责处理按钮的点击事件

$('#tambahUser').click(function(event){
    $('#modalSignUpSm').modal({
        backdrop: 'static',
        keyboard: false,
    })
    .modal('show')
    .find('#modalContent')
    .load($(this).attr('value'));
});

$('#tutupModal').click(function(){
    $('#modalSignUpSm').modal('close');
});

这是我的控制器(我正在使用Yii2)的Module / create

public function actionCreate()
{
    $model = new Module();

    if ($model->load(Yii::$app->request->post()) && $model->save()) {
        return $this->redirect(Url::to(['/paneladm/pengaturan/module',true]));
    } else {
        return $this->renderAjax('create', [
            'model' => $model,
        ]);
    }
}

我的问题是为什么模态只打开一次,之后,按钮卡住..?如何解决......

注意: - 我是jQuery的新手,我非常感谢你的每一个答案。 - 我在这个论坛上搜索并尝试通过创建一个按钮来解决,点击的每个按钮都会触发.modal('close'),但仍无法正常工作

1 个答案:

答案 0 :(得分:0)

你应该 使用Bootstraps数据属性来触发和关闭模态,通过javascript手动使用触发器。现在你正试图做到这两点。请参阅this example

所以我会删除bootstrap数据属性,然后确保你的引导脚本在你自己的javascript之前加载