ASP.NET core MVC,jsonaction如何使用控制器调用多个模态框中指定的模态框
时间: 2024-03-12 22:43:12 浏览: 143
在ASP.NET Core MVC中,您可以通过在控制器中使用JsonResult返回模态框的HTML代码,并在视图中使用JavaScript和jQuery调用它们。以下是示例代码:
1. 首先,您需要在控制器中添加一个返回模态框HTML代码的操作方法。例如:
```
public JsonResult GetModal1()
{
string modalHtml = this.RenderPartialViewToString("_Modal1");
return Json(new { html = modalHtml });
}
public JsonResult GetModal2()
{
string modalHtml = this.RenderPartialViewToString("_Modal2");
return Json(new { html = modalHtml });
}
```
其中,"_Modal1"和"_Modal2"是存储模态框HTML代码的局部视图名称。`RenderPartialViewToString()`是一个扩展方法,可以将局部视图呈现为字符串。
2. 在视图中,您可以使用以下代码来呈现模态框:
```
<button class="btn btn-primary" onclick="openModal('modal1')">Open Modal 1</button>
<button class="btn btn-primary" onclick="openModal('modal2')">Open Modal 2</button>
<div id="modalContainer"></div>
<script>
function openModal(modalId) {
$.ajax({
type: "GET",
url: "/ControllerName/Get" + modalId,
success: function (data) {
$("#modalContainer").html(data.html);
$("#" + modalId).modal("show");
}
});
}
</script>
```
其中,"openModal"函数将通过AJAX调用控制器操作方法,并将返回的JSON对象中的HTML代码添加到名为"modalContainer"的DIV元素中。然后,它将使用jQuery显示特定的模态框。
请注意,在"openModal"函数中,"ControllerName"应该是您的控制器名称。
通过这种方式,您可以从控制器中返回多个模态框,并在视图中呈现它们。
阅读全文