web-dev-qa-db-ja.com

Twitter bootstrap=モーダルが機能しない

Twitter Bootstrapは初めてです。モーダルパネルで作業していますが、表示されていません。画面はフェードしますが、モーダル自体は表示されません。エラーコンソールを確認しましたが、エラーはありません。

私のコードは<head>タグ内にあります。次のようなスクリプトを含めます。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo $ruadmin ?>js/bootstrap.js"></script>
<script src="<?php echo $ruadmin ?>js/tablesorter/jquery.tablesorter.js"></script>
<script src="<?php echo $ruadmin ?>js/tablesorter/tables.js"></script>

モーダルページ:

<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-large">Launch demo modal</a>

<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">Welcome</h3>
  </div>
  <div class="modal-body">
    <p> Hello </p>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
    <button class="btn btn-primary">Save changes</button>
  </div>
</div>
29
baig

data-targetタグを使用する必要があります。

href="#myModal"属性をdata-target="#myModal"に置き換えてください。また、hideクラスを配置しましたが、そこにあるべきではないと思います。

例を見てください here

31
André Junges

これを変更:

<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-large">Launch demo modal</a>

これに:

<button type="button" class="btn btn-primary btn-large" data-toggle="modal" data-target="#myModal">Launch demo modal</button>

aタグをbuttonタグに変更することは答えではありませんが、data-targetおよびdata-toggle「作業」を行う属性)

この例を見てください:

<!DOCTYPE html >

<html>
<head>
    <title>Bootstrap Modal</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>    
    <!-- Bootstrap -->
    <!-- Latest compiled and minified CSS -->
    <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.min.css">
    <!-- Optional theme -->
    <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap-theme.min.css">
    <!-- Latest compiled and minified JavaScript -->
    <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.min.js"></script>
</head>
<body>
    <button type="button" class="btn btn-primary btn-large" data-toggle="modal" data-target="#myModal">Launch demo modal</button>

    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="purchaseLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <h4 class="modal-title" id="purchaseLabel">Purchase</h4>
                </div>
                <div class="modal-body">
                    sup?
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                    <button type="button" class="btn btn-primary">Purchase</button>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
13
sabotero

私は同じ問題を抱えていましたが、BOOTSTRAPの後にJQUERYライブラリを含めることに気付きました。

Webページで、最初にJQUERYを追加/リンクし、次にブートストラップを追加/リンクすることを確認します

4
s1gm9

誰かがこの問題に遭遇し、上記のいずれも機能しない場合、cssクラスがモーダルのクラス属性でフェードインしていませんでした

私はこのようなモーダルのdivを持っていました

<div class="modal" id="AdvanceSearchModal" tabindex="-1" role="dialog">

フェードクラスを追加しました

<div class="modal fade" id="AdvanceSearchModal" tabindex="-1" role="dialog">

これでモーダルが再び開きます

2
FFHanzel