【问题标题】:Pass data into a Modal using JavaScript使用 JavaScript 将数据传递到 Modal
【发布时间】:2016-06-30 14:36:05
【问题描述】:

现在我有一个弹出模态框,其中包含我的模型的一些细节。当用户单击列表项时,它会弹出。 我做了什么,我将模态添加到一个 foreach 循环中,我知道这不是最好的方法。它可以工作,但它会为每个列表项创建一个模式...

有没有办法在 foreach 循环之外使用模态并在点击事件时填充内容?

这是我的模态:和 foreach 循环

@foreach (var item in Model.Where(p => p.CurrentStatus == "Start"   && p.member == "budyn"))
            {
                 <!-- Modal -->
                <div class="modal fade" id="myModal" role="dialog">
                    <div class="modal-dialog">

                        <!-- Modal content-->
                        <div class="modal-content">
                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal">&times;</button>
                                <h4 class="modal-title">@item.JobID</h4>
                            </div>
                            <div class="modal-body">
                                <p>@item.JobTitle</p>
                                <!-- etc... -->
                            </div>
                            <div class="modal-footer">
                                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                            </div>
                        </div>

                    </div>
                </div>
                <li class="list-group-item"> <a data-toggle="modal" data-target="#myModal">@item.JobID @item.JobTitle </a> </li>

            }

【问题讨论】:

    标签: javascript twitter-bootstrap modal-dialog


    【解决方案1】:

    在这里你可以继续。

    您的行列表

    @foreach (var list in Model)
    {    
         //You can put other rows data like data-id and get them on popup open                
       <button type="button" class="btn btn-danger btn-xs" data-toggle="modal" data-target="#myModal" data-id="@list.PrimaryKey">Click</button>
    
     }
    

    你在循环之外的模态

    <div id="myModal" class="modal fade" role="dialog">
                    <div class="modal-dialog">
                        <!-- Modal content-->
                        <div class="modal-content">
                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal">&times;</button>
                                <h4 class="modal-title">Details</h4>
                            </div>
                            <div class="modal-body">
                               <input id="primaryKeyValue">
                            </div>
                            <div class="modal-footer">
                                <form asp-controller="Billing" asp-action="Delete" method="post" class="form-inline" role="form">
    <input type="hidden" id="id">
                                    <button type="submit" class="btn btn-danger"><span class="glyphicon glyphicon-trash" style="vertical-align:middle;margin-top: -5px"></span> Delete</button>
                                    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                                </form>
                            </div>
                        </div>
                    </div>
                </div> 
    

    在模式打开时

        $(document).ready(function () {
                $('#myModal').on('show.bs.modal', function (event) {
                    var button = $(event.relatedTarget);//Button which is clicked
                    var clickedButtonId= button.data('id');
    
                   $("input #primaryKeyValue").val(clickedButtonId);
    
     // If there are many values you want to show or want to make ajax call, you can do it here, and then setthem inside modal(popup)
    
            });  
    

    有关引导事件的更多详细信息,请参阅 https://getbootstrap.com/javascript/#modals-related-target

    【讨论】:

    • ive 将 $("input #primaryKeyValue") 更改为 $(".modal-body #primaryKeyValue") 并且它可以工作。谢谢你。 :)
    猜你喜欢
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多