首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将值从引导传递到django模式

将值从引导传递到django模式
EN

Stack Overflow用户
提问于 2022-06-27 10:31:55
回答 1查看 89关注 0票数 0

在这里,我尝试使用ajax在外部传递for循环模型的值。

这是我的template.html

代码语言:javascript
复制
               {% for compliance in compliance %}
                    {% complience_category compliance request.user as compliances %}
                    {% for qualification in compliances %}
                    .....
                    .....
                    <td>
                        <button data-id="{{ qualification.id }}" type="button" class="btn btn-warning margin-bottom edit-qualification">
                            edit
                        </button>
                    </td>
                    ....
                    .....
                    {% endfor %}
                    {% csrf_token %}
                <div class="modal hid fade" id="modal-default">
                    <form class="form-horizontal" method="POST" enctype="multipart/form-data" action=" {% url 'update_qualifications' qualification.id %}"> 
                        {% csrf_token %}

                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                                <h3>Update Compliance</h3>
                            </div>
                            <div class="modal-body">
                                <div class="control-group">
                                    <label class="control-label" for="inputdate_{{qualification.id}}">Expiry Date</label>
                                    <div class="controls">
                                            <input type="date" id="inputdate_{{qualification.id}}" name="expiry_date" value="{{qualification.expiry_date|date:'Y-m-d'}}">
                                       
                                    </div>
                                </div>
                            </div>
                            <div class="modal-footer">
                                
                                <button class="btn" data-dismiss="modal">Close</button>
                                <button class="btn btn-primary" type="submit">Save</button>
                            </div>


                    </form>
                </div>

                {% endfor %}

这是我的AJAX

代码语言:javascript
复制
$(document).on('click','.edit-qualification',function(){
    var id = $(this).data('id');

    $.ajax({
        url:'',
        type:'POST',
        data:{
            'id':id,
            'csrfmiddlewaretoken': $('input[name=csrfmiddlewaretoken]').val(),
        },
        success:function(data){
            $('#edit_modal .modal-dialog').html($('#edit_modal .modal-dialog',data));
            $('#edit_modal').modal('show');
            
        },
        error:function(){
            console.log('error')
        },
    });
});
</script>

在这里,我的模式在for循环之外

在这里,我的问题是,当我单击编辑按钮时,我的模式弹出窗口无法工作(这意味着当单击编辑按钮时,对我没有任何作用)。

EN

回答 1

Stack Overflow用户

发布于 2022-06-27 12:52:23

这里我的模式在for循环之外

从外观上看,这个模式仍然在for loop的内部。

代码语言:javascript
复制
{% for compliance in compliance %}
     ...
     ...
     # your modal is here...
{% endfor %}

我建议把模态放在loop之外。

另外要注意的是,在这里使用Ajax是没有必要的,除非我不理解您使用它的目的是什么。

但是,对于edit button,我建议您添加两个属性:data-toggledata-target。示例:

代码语言:javascript
复制
<button data-toggle="modal" data-target="#myModal">
     edit
</button>

在您的例子中,您可以为模式div提供一个idid="modal-default"。这应该分配给按钮的data-target属性。data-target="#modal-default"

因此,对于edit button,您应该拥有的是:

代码语言:javascript
复制
<button data-toggle="modal" data-target="#modal-default" data-id="{{ qualification.id }}" type="button" class="btn btn-warning margin-bottom edit-qualification">
     edit
</button>

理想情况下,这应该可以用来显示模态。

至于如果单击特定的编辑按钮,如何将值传递到模式的问题,那么我建议您看到这个answer here,因为它可能非常有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72770618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档