模态不能用 django 打开
Modal doesn't open with django
我在 django 中遇到一个模态问题。
我有一个 link 调用一个 id 并且 id 是一个模态。但是,模式没有打开。我很确定这种情况正在发生,因为 link 在 "automatic" 表单中,但我是 django 和 python 的新手,所以我不知道。
密码是:
{% block body %}
<div class="col-lg-12 page-content">
<h1 class="content-title">Meus Dados</h1>
<hr class="star-light">
<div class="form-content">
<form class="form-horizontal" method = 'POST' action="/user/edituser/">
{% csrf_token %}
{% for field in form_user %}
{% bootstrap_field field exclude="password,repeat_password" %}
{% endfor %}
<div class="button-div">
<a class="btn btn-info btn-block btn-password" href="#change-password"
data-toggle="modal">Alterar senha</a>
{% buttons %}
<button class="btn btn-success btn-block btn-edit" type = 'submit'>Salvar Dados</button>
{% endbuttons %}
</div>
</form>
<a class="btn btn-danger btn-block btn-delete" href="/user/delete" name="delete">Excluir minha conta</a>
</div>
</div>
<div class="modal hide" id="change-password">
<div class="modal-header">
<button class="close" data-dismiss="modal">×</button>
<p class="modal-title" id="myModalLabel">Change Password</p>
</div>
<div class="modal-body">
<div class="row">
<div class="modal-col col-sm-12">
<div class="well">
<form method="post" id="passwordForm">
<input type="password" class="input-lg form-control" name="password1"
id="password1" placeholder="New Password">
<input type="password" class="input-lg form-control" name="password2"
id="password2" placeholder="Repeat Password">
</form>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<a href="#" class="btn btn-success btn-bloc">Alterar Senha</a>
</div>
</div>
{% endblock %}
如有疑问,请追问。
谢谢
<a class="btn btn-info btn-block btn-password" href="#change-password" data-toggle="modal">Alterar senha</a>
除了 data-toggle
之外,您还需要一个 data-target
属性。 http://getbootstrap.com/javascript/#live-demo
尝试在
中将标签 "a" 更改为标签 "button"
<a class="btn btn-info btn-block btn-password" href="#change-password"
data-toggle="modal">Alterar senha</a>
并隐藏淡入
<div class="modal hide" id="change-password">
将您的 <a>
标签更改为以下内容:
<a class="btn btn-info btn-block btn-password" href="#"
data-toggle="modal" data-target="#change-password">Alterar senha</a>
至少我在我的 Django 模板中是这样做的。正如我认为 @souldeux 试图说的那样,您需要使用 data-target
属性来指定模态本身,而不是 href
;在这种情况下,我通常只使用 #
。
此外,请确保您不仅要加载 bootstrap css 代码,还要加载 bootstrap js 库。换句话说,确保您的模板中包含以下内容(或等效内容):
<!-- Latest compiled and minified JavaScript (at the time of this post) -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
除了你的css:
<!-- Latest compiled and minified CSS (at the time of this post) -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
我假设你已经有了,否则事情会看起来很奇怪。
我在 django 中遇到一个模态问题。
我有一个 link 调用一个 id 并且 id 是一个模态。但是,模式没有打开。我很确定这种情况正在发生,因为 link 在 "automatic" 表单中,但我是 django 和 python 的新手,所以我不知道。
密码是:
{% block body %}
<div class="col-lg-12 page-content">
<h1 class="content-title">Meus Dados</h1>
<hr class="star-light">
<div class="form-content">
<form class="form-horizontal" method = 'POST' action="/user/edituser/">
{% csrf_token %}
{% for field in form_user %}
{% bootstrap_field field exclude="password,repeat_password" %}
{% endfor %}
<div class="button-div">
<a class="btn btn-info btn-block btn-password" href="#change-password"
data-toggle="modal">Alterar senha</a>
{% buttons %}
<button class="btn btn-success btn-block btn-edit" type = 'submit'>Salvar Dados</button>
{% endbuttons %}
</div>
</form>
<a class="btn btn-danger btn-block btn-delete" href="/user/delete" name="delete">Excluir minha conta</a>
</div>
</div>
<div class="modal hide" id="change-password">
<div class="modal-header">
<button class="close" data-dismiss="modal">×</button>
<p class="modal-title" id="myModalLabel">Change Password</p>
</div>
<div class="modal-body">
<div class="row">
<div class="modal-col col-sm-12">
<div class="well">
<form method="post" id="passwordForm">
<input type="password" class="input-lg form-control" name="password1"
id="password1" placeholder="New Password">
<input type="password" class="input-lg form-control" name="password2"
id="password2" placeholder="Repeat Password">
</form>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<a href="#" class="btn btn-success btn-bloc">Alterar Senha</a>
</div>
</div>
{% endblock %}
如有疑问,请追问。 谢谢
<a class="btn btn-info btn-block btn-password" href="#change-password" data-toggle="modal">Alterar senha</a>
除了 data-toggle
之外,您还需要一个 data-target
属性。 http://getbootstrap.com/javascript/#live-demo
尝试在
中将标签 "a" 更改为标签 "button"<a class="btn btn-info btn-block btn-password" href="#change-password"
data-toggle="modal">Alterar senha</a>
并隐藏淡入
<div class="modal hide" id="change-password">
将您的 <a>
标签更改为以下内容:
<a class="btn btn-info btn-block btn-password" href="#"
data-toggle="modal" data-target="#change-password">Alterar senha</a>
至少我在我的 Django 模板中是这样做的。正如我认为 @souldeux 试图说的那样,您需要使用 data-target
属性来指定模态本身,而不是 href
;在这种情况下,我通常只使用 #
。
此外,请确保您不仅要加载 bootstrap css 代码,还要加载 bootstrap js 库。换句话说,确保您的模板中包含以下内容(或等效内容):
<!-- Latest compiled and minified JavaScript (at the time of this post) -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
除了你的css:
<!-- Latest compiled and minified CSS (at the time of this post) -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
我假设你已经有了,否则事情会看起来很奇怪。