Javascript 如何使用asp.net核心从一个视图通过另一个视图获取内容?
我正在尝试将该视图从身份登录到另一个视图上的弹出窗口中。我该怎么做?以下是我到目前为止的情况:Javascript 如何使用asp.net核心从一个视图通过另一个视图获取内容?,javascript,asp.net-core,popup,Javascript,Asp.net Core,Popup,我正在尝试将该视图从身份登录到另一个视图上的弹出窗口中。我该怎么做?以下是我到目前为止的情况: 登录 &时代; var modal=document.getElementById(“myModal”); //获取打开模式对话框的按钮 var btn=document.getElementById(“loginBtn”); //获取关闭模态的元素 var span=document.getElementsByClassName(“关闭”)[0]; //当用户单击该按钮时,打开模式对话框 btn.
登录
&时代;
var modal=document.getElementById(“myModal”);
//获取打开模式对话框的按钮
var btn=document.getElementById(“loginBtn”);
//获取关闭模态的元素
var span=document.getElementsByClassName(“关闭”)[0];
//当用户单击该按钮时,打开模式对话框
btn.onclick=函数(){
modal.style.display=“块”;
}
//当用户单击(x)时,关闭模式对话框
span.onclick=函数(){
modal.style.display=“无”;
}
//当用户单击模式之外的任何位置时,将其关闭
window.onclick=函数(事件){
如果(event.target==模态){
modal.style.display=“无”;
}
}
注意:我使用的是ASP.NET核心版本3.1,因此对标识类的访问有点不同
我正在尝试将该视图从身份登录到另一个视图上的弹出窗口中。我该怎么做
您可以参考以下示例代码来实现您的需求
使用以下内容创建名为\u IdentityLoginPartial
的局部视图
参考\u IdentityLoginPartial
部分视图,并将其作为模式弹出窗口的一部分
&时代;
测试结果
我正在尝试将该视图从身份登录到另一个视图上的弹出窗口中。我该怎么做
您可以参考以下示例代码来实现您的需求
使用以下内容创建名为\u IdentityLoginPartial
的局部视图
参考\u IdentityLoginPartial
部分视图,并将其作为模式弹出窗口的一部分
&时代;
测试结果
为什么不将标识视图用作局部视图?为什么不将标识视图用作局部视图?
@model IdentityLoginModel
<div class="row">
<div class="col-md-4">
<section>
<form id="account" method="post" asp-area="Identity" asp-page="/Account/Login">
<h4>Use a local account to log in.</h4>
<hr />
<div asp-validation-summary="All" class="text-danger"></div>
<div class="form-group">
<label asp-for="Input.Email"></label>
<input asp-for="Input.Email" class="form-control" />
<span asp-validation-for="Input.Email" class="text-danger"></span>
</div>
<div class="form-group">
<label asp-for="Input.Password"></label>
<input asp-for="Input.Password" class="form-control" />
<span asp-validation-for="Input.Password" class="text-danger"></span>
</div>
<div class="form-group">
<div class="checkbox">
<label asp-for="Input.RememberMe">
<input asp-for="Input.RememberMe" />
@Html.DisplayNameFor(m => m.Input.RememberMe)
</label>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Log in</button>
</div>
<div class="form-group">
<p>
<a id="forgot-password" asp-area="Identity" asp-page="/Account/ForgotPassword">Forgot your password?</a>
</p>
<p>
<a asp-area="Identity" asp-page="/Account/Register" asp-route-returnUrl="@Model.ReturnUrl">Register as a new user</a>
</p>
</div>
</form>
</section>
</div>
<div class="col-md-6 col-md-offset-2">
<section>
<h4>Use another service to log in.</h4>
<hr />
@{
if ((Model.ExternalLogins?.Count ?? 0) == 0)
{
<div>
<p>
There are no external authentication services configured. See <a href="https://go.microsoft.com/fwlink/?LinkID=532715">this article</a>
for details on setting up this ASP.NET application to support logging in via external services.
</p>
</div>
}
else
{
<form id="external-account" asp-page="./ExternalLogin" asp-route-returnUrl="@Model.ReturnUrl" method="post" class="form-horizontal">
<div>
<p>
@foreach (var provider in Model.ExternalLogins)
{
<button type="submit" class="btn btn-primary" name="provider" value="@provider.Name" title="Log in using your @provider.DisplayName account">@provider.DisplayName</button>
}
</p>
</div>
</form>
}
}
</section>
</div>
</div>
@section Scripts {
<partial name="_ValidationScriptsPartial" />
}
public class IdentityLoginModel
{
public InputModel Input { get; set; }
public IList<AuthenticationScheme> ExternalLogins { get; set; }
public string ReturnUrl { get; set; }
public class InputModel
{
[Required]
[EmailAddress]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
}
<div id="myModal" class="modal">
<div class="modal-content animated fadeIn">
<span class="close" onclick="closeModal()">×</span>
<div id="login" class="added">
<partial name="_IdentityLoginPartial" model='new IdentityLoginModel { ReturnUrl = "/" }' />
</div>
</div>
</div>