В моем проекте Core 2.0 я пытаюсь загрузить частичное представление в модальный div при вызове из _Layout.cshtml, но ничего не происходит.При нажатии Создать нового пользователя Я пытаюсь загрузить частичное представление в модальном всплывающем окне.Ниже приведен код -
// _ Layout.cshtml
<li><a asp-area="" asp-controller="Home" asp-action="Index">Home</a></li>
<li><a asp-area="" asp-controller="Home" asp-action="About">About</a></li>
<li><a asp-area="" asp-controller="Home" asp-action="Contact">Contact</a></li>
<li><a href="/" onclick="CreateUser()">Create New User</a></li>
// Index.cshtml из Home
<div class="modal fade" id="AppointmentSchedule" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header btn-primary">
<h5 class="modal-title" id="AppointmentModalLabel"></h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body" id="ScheduleAppointment"></div>
</div>
</div>
</div>
// Javascript
function CreateUser() {
var url = appSetting + "Home/CreateUser";
$.ajax({
type: "GET",
contentType: "application/json",
url: url,
data: null,
dataType: "html",
async: false,
success: function (data) {
$("#ScheduleAppointment").html('');
$("#ScheduleAppointment").html(data);
$("#AppointmentSchedule").modal('show');
},
error: function (result) {
$("#divScheduleAppointment").html('');
}
})
}
// Home Controller
public ActionResult CreateUser()
{
return PartialView("_CreateUserHome");
}
При отладке я понимаю, что после успеха Ajax он вызывает метод действия Index контроллера Home (что не должно быть) и может быть причиной обновления страницы, а всплывающее окно может закрываться.,Но каково это решение.