Twitter引导模式显示然后消失

时间:2012-11-28 06:01:40

标签: php javascript twitter-bootstrap modal-dialog

我经历了与Twitter Bootstrap模式相关的所有问题,但我的问题在这里有点独特。

我已经包含了最新bootstrap版本中的文件,所以我的公共目录有 -

css/
| bootstrap.css
| bootstrap.min.css

js/
| bootstrap.js
| bootstrap.min.js

我也在使用Select2,我已经检查过它没有干扰引导程序文件。

我的模态以这种方式定义 -

<div class="modal hide fade" id="modal-<?php echo $user_role->id ?>" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
        <h3>Update &ldquo;{{ $user_role->role_name }}&rdquo;</h3>
    </div>
    <div class="modal-body">
        <label>New Value</label>
        <input type="hidden" name="inputId" value="<?php echo $user_role->id ?>">
        <input type="text" name="inputUpdate" value="<?php echo $user_role->role_name ?>" autofocus>
    </div>
    <div class="modal-footer">
        <a href="#" class="btn" data-dismiss="modal" aria-hidden="true">Cancel</a>
        <a rel="update" href="<?php echo url('admin/dashboard/controls/update_master') ?>" class="btn btn-primary">Update</a>
    </div>
</div>

要调用模态,按钮的定义如下 -

<a rel="edit" data-toggle="modal" href="#modal-<?php echo $user_role->id ?>" class="btn btn-info">Edit</a>

在页面上运行的JS是 -

$(document).ready(function() {
    var urlModal;
    $('a[rel="edit"]').click(function() {
        urlModal = $(this).attr('href');
        $(urlModal).modal();
    });
});

每当我点击<a rel="edit">按钮时,模态就会出现并立即消失。

1 个答案:

答案 0 :(得分:3)

我刚刚发现了问题。

$('a[rel="edit"]').click(function() {
    urlModal = $(this).attr('href');
    $(urlModal).modal();
});

$(urlModal).modal();部分并非必需。按钮的HTML部分中的代码本身就是模态。而这个问题正在关闭它。

现在,它的工作。