当在同一页面上单击按钮时,在引导程序模态中获取ID

时间:2018-12-31 23:23:04

标签: javascript jquery ajax asp.net-core asp.net-core-signalr

我有多个按钮来调用页面中的引导程序模型,这些按钮是通过基于数据库表行的foreach循环生成的,例如,如果数据库表有两行,则第一行id为1,第二行id为2按钮生成并且我为每个按钮设置了特定的ID,我希望当用户单击按钮时,引导程序弹出模态将打开并以单击的模态显示按钮ID。

我想在同一页面中将按钮ID保留为模态

1 个答案:

答案 0 :(得分:0)

您可以参考以下演示

查看代码

@model IEnumerable<MVC2_1Test.Models.City>

@{
ViewData["Title"] = "Index";
}

<h2>Index</h2>

<p>
<a asp-action="Create">Create New</a>
</p>
<table class="table">
<thead>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.CityName)
        </th>
        <th>

        </th>
    </tr>
</thead>
<tbody>
    @foreach (var item in Model)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.CityName)
            </td>
            <td>
                <button data-id="@item.Id" data-toggle="modal" data-target="#myModal" class="ModalClick"> Edit </button>
            </td>
        </tr>
    }
</tbody>

模态代码<input type="text" name="id" id="id" />在模态主体中以获取按钮的ID

<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
            <h4 class="modal-title" id="myModalLabel">Details</h4>
        </div>
        <div class="modal-body">
            <div class="form-group">
                <label class="control-label">Id:</label>
                <input type="text" name="id" id="id" />
            </div>

        </div>
        <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        </div>
    </div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->

在jQuery中,通过data-id="@item.Id"获取每个按钮的特定ID,并将其ID设置为模态主体中的<input type="text" name="id" id="id"/>

  @section Scripts
{
<script type="text/javascript">
    $(".btnModal").click(function () {
        var passedID = $(this).data('id');//get the id of the selected button
        $('input:text').val(passedID);//set the id to the input on the modal
    });
</script>

工作原理

enter image description here