jquery 模式不显示,但点击按钮时出现灰色背景

mm9b1k5b  于 2023-04-29  发布在  jQuery
关注(0)|答案(3)|浏览(99)

我有一个动态创建的表,点击查看按钮,出现在每一行,它显示一个灰色的屏幕,但模型没有打开。我试了很多次,但不明白问题出在哪里。我把https://simpleisbetterthancomplex.com/tutorial/2016/11/15/how-to-implement-a-crud-using-ajax-and-json.html的帮助他的代码作为参考。
请帮帮我。..***

  • m_manage.html---这里我声明了modal并包含了页面 *
<div class="panel-body">
 <table class="table table-hover" id="table">                      
   <tbody>
      {% include 'm_manage/partial_m_manage.html' %}
   </tbody>
 </table>
</div>              
<div class="modal fade" id="modal-leave">
  <div class="modal-dialog">
   <div class="modal-content">
 </div>
</div>
  • partial_m_manage。html:它包含表中的列 *
{% for  pl in pending_leaves %}
<tr> 
  <td><button type="button" class="btn btn-default btn-sm view" data-url="{% url 'm_manage:leave_view' pl.id %}" data-target="#{{pl.id}}_3"><i class="fa fa-eye" aria-hidden="true" style="color:black"></i></button>                                        
   </td>                                   
</tr>
{% endfor %}

js----单击按钮时调用

$("#table").on('click', '.view', function (e) {
    var btn = $(this);
    console.log(btn);
    var url= btn.attr("data-url");
    console.log(url);
    $.ajax({
      // url: '/m_manage/leave_view/', 
      url: btn.attr("data-url"),
      dataType: 'json',
      type: 'get',

      beforeSend: function () {
       $("#modal-leave").modal("show");
      },
      success: function (data) {
        console.log('You Did it!!!!');
        $("#modal-leave .modal-content").html(data.html_form);
      }
    });
  });
  • 观点.py--*
def leave_view(request,pk):
  Leave = get_object_or_404(leave, pk=pk);
  data=dict()
  if request.method == 'POST':
     data['html_form']= render_to_string('m_manage/view_modal.html',{'Leave':Leave}, request=request)
return JsonResponse(data)

view_modal.html---我正在渲染一个新的页面ie modal

<form method="post" action="{% url 'm_manage:leave_view' Leave.id %}" class="js-leave-view-form">
{% csrf_token %}
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
      <span aria-hidden="true">&times;</span>
    </button>
    <h4 class="modal-title">Do you want to accept {{Leave.id}} leave</h4>
  </div>
  <div class="modal-body"> 
  <h1>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</h1>
  </div>
  <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
    <button type="submit" class="btn btn-primary">Create book</button>
  </div>
  </form>

但是黑屏出现,所有值都在控制台中成功打印,但是没有出现模态弹出窗口。..

请帮帮我。..:(*

eqoofvh9

eqoofvh91#

你应该加上“引导。min.css”。

vfwfrxfs

vfwfrxfs2#

我有这个问题。原来是因为触发模态的按钮在被渲染的部分之前。我只是在html i中把这两个东西调换了一下。e.

<%= render 'some_modal' %>
<%= link_to 'Click here' %>

<%= link_to 'Click here' %>
<%= render 'some_modal' %>
wgxvkvu9

wgxvkvu93#

我也遇到过同样的问题(除了模态问题,我的整个网站看起来'错误'),结果是bower下载了错误的bootstrap版本。
我的'bower.json'指定了"bootstrap": "3.3.0",但bower install下载的是版本5。2.3,破坏我的网站。在我的凉亭里加一个插入符号。json为我解决了这个问题:"bootstrap": "^3.3.0",
我认为问题在于可能有其他依赖项bower试图解决,然后自动拉取最新版本,忽略你的版本规范。插入符号确保无论bower拉出来的版本都是向后兼容的。

相关问题