单击按钮时模态对话框不显示,但区域变灰 ASP.NET Core MVC
Modal Dialog does not show on button click, but area grays out ASP.NET Core MVC
我有一个按钮,我想使用它来呈现模式对话框。按钮是:
<button id="runButton" type="button" class="btn btn-sm btn-outline-secondary">Run</button>
<div class="modal fade" id="RunModal" role="dialog" data-url='@Url.Action("_Run", "Tests")'></div>
我的javascript函数是:
$(document).ready(function () {
$('#runButton').click(function () {
var url = $('#RunModal').data('url');
$.get(url, function (data) {
$("#RunModal").html(data);
$("#RunModal").modal('show');
});
});
});
模态对话框的局部视图是:
<div id="RunModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="RunModal" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<h6 class="modal-title">Run</h6>
<button type="button" class="close" data-dismiss="modal">×</button>
</div>
<div class="modal-body">
<form>
<fieldset>
<div class="form-group">
<label>Value Set Name</label>
<input type="text" placeholder="Enter the value set name" class="form-control small-input" id="newValueSet" />
</div>
</fieldset>
</form>
</div>
<div class="modal-footer">
<div class="btn-group">
<button type="button" class="btn btn-sm btn-outline-secondary" data-dismiss="modal">Run</button>
<button type="button" class="btn btn-sm btn-outline-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
</div>
我的控制器功能是:
public ActionResult _Run()
{
return PartialView();
}
当我单击该按钮时,它转到控制器和 returns 视图,但模态对话框不显示,网页区域显示为灰色。任何指向可能导致此类行为的原因的指示都会有很大帮助。调试时 Inspector 不会在控制台上抛出任何错误。
首先,我发现 id RunModal
在你的视图和 parital view.And 中重复,那么你应该在视图和部分视图中都显示 dalog
。
这是一个有效的演示(我将 id(RunModal
) 更改为 RunModal1
):
控制器:
public IActionResult Index()
{
return View();
}
public ActionResult _Run()
{
return PartialView("~/Views/Tests/_Run.cshtml");
}
查看:
@{
ViewData["Title"] = "Index";
}
<h1>Index</h1>
<button id="runButton" type="button" class="btn btn-sm btn-outline-secondary">Run</button>
<div class="modal fade" id="RunModal1" role="dialog" data-url='@Url.Action("_Run", "Tests")'></div>
@section scripts{
<script type="text/javascript">
$(document).ready(function () {
});
$('#runButton').click(function () {
var url = $('#RunModal1').data('url');
$.get(url, function (data) {
$("#RunModal1").html(data);
$("#RunModal").modal('show');
$("#RunModal1").modal('show');
});
});
</script>
}
结果:
我有一个按钮,我想使用它来呈现模式对话框。按钮是:
<button id="runButton" type="button" class="btn btn-sm btn-outline-secondary">Run</button>
<div class="modal fade" id="RunModal" role="dialog" data-url='@Url.Action("_Run", "Tests")'></div>
我的javascript函数是:
$(document).ready(function () {
$('#runButton').click(function () {
var url = $('#RunModal').data('url');
$.get(url, function (data) {
$("#RunModal").html(data);
$("#RunModal").modal('show');
});
});
});
模态对话框的局部视图是:
<div id="RunModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="RunModal" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<h6 class="modal-title">Run</h6>
<button type="button" class="close" data-dismiss="modal">×</button>
</div>
<div class="modal-body">
<form>
<fieldset>
<div class="form-group">
<label>Value Set Name</label>
<input type="text" placeholder="Enter the value set name" class="form-control small-input" id="newValueSet" />
</div>
</fieldset>
</form>
</div>
<div class="modal-footer">
<div class="btn-group">
<button type="button" class="btn btn-sm btn-outline-secondary" data-dismiss="modal">Run</button>
<button type="button" class="btn btn-sm btn-outline-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
</div>
我的控制器功能是:
public ActionResult _Run()
{
return PartialView();
}
当我单击该按钮时,它转到控制器和 returns 视图,但模态对话框不显示,网页区域显示为灰色。任何指向可能导致此类行为的原因的指示都会有很大帮助。调试时 Inspector 不会在控制台上抛出任何错误。
首先,我发现 id RunModal
在你的视图和 parital view.And 中重复,那么你应该在视图和部分视图中都显示 dalog
。
这是一个有效的演示(我将 id(RunModal
) 更改为 RunModal1
):
控制器:
public IActionResult Index()
{
return View();
}
public ActionResult _Run()
{
return PartialView("~/Views/Tests/_Run.cshtml");
}
查看:
@{
ViewData["Title"] = "Index";
}
<h1>Index</h1>
<button id="runButton" type="button" class="btn btn-sm btn-outline-secondary">Run</button>
<div class="modal fade" id="RunModal1" role="dialog" data-url='@Url.Action("_Run", "Tests")'></div>
@section scripts{
<script type="text/javascript">
$(document).ready(function () {
});
$('#runButton').click(function () {
var url = $('#RunModal1').data('url');
$.get(url, function (data) {
$("#RunModal1").html(data);
$("#RunModal").modal('show');
$("#RunModal1").modal('show');
});
});
</script>
}
结果: