我有多个按钮来调用页面中的引导程序模型,这些按钮是通过基于数据库表行的foreach循环生成的,例如,如果数据库表有两行,则第一行id为1,第二行id为2按钮生成并且我为每个按钮设置了特定的ID,我希望当用户单击按钮时,引导程序弹出模态将打开并以单击的模态显示按钮ID。
我想在同一页面中将按钮ID保留为模态
答案 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">×</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>
工作原理