为注册页面制作了一个小前端,不知道如何在mongodb中实际注册用户。编写CRUD方法,问题是如何从视图的文本框中获取参数并将其一直解析到数据层?这是我提交注册表单的按钮:
studentinfo
用户控制器暂时为空。不确定在MVC中我是否可以使用onClick =""按钮的方法,可能不是,因为文件后面没有代码。起初我以为我应该能够以某种方式调用Padding.Click()或其他任何方法,但它似乎并不是一种正确的方法。
答案 0 :(得分:2)
使用强类型数据绑定将数据从视图发布到控制器,如:
<强> POCO 强>
public class RegisterUser
{
[Required]
[EmailAddress]
[Display(Name = "Email")]
public string Email { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
<强> Register.cstml 强>
<form asp-controller="Account" asp-action="Register" method="post" class="form-horizontal" role="form">
<h4>Create a new account.</h4>
<hr />
<div asp-validation-summary="ValidationSummary.All" class="text-danger"></div>
<div class="form-group">
<label asp-for="Email" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="Email" class="form-control" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<label asp-for="Password" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="Password" class="form-control" />
<span asp-validation-for="Password" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<label asp-for="ConfirmPassword" class="col-md-2 control-label"></label>
<div class="col-md-10">
<input asp-for="ConfirmPassword" class="form-control" />
<span asp-validation-for="ConfirmPassword" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<button type="submit" class="btn btn-default">Register</button>
</div>
</div>
控制人员的行动方法
public IActionResult Register(RegisterUser model)
{
//send data to data layer and then can be inserted into mongodb or may be in some other databases
}
答案 1 :(得分:0)
我不知道你想要实现什么目标。但首先让我们更正你的html /
<input ="Submit" id="Padding" value="Sign up" class="btn btn-primary" />
应该是
<input type="Submit" id="Padding" value="Sign up" class="btn btn-primary" />
您缺少按钮中的type属性。现在你的HTML是正确的。
下一步:您可以在按钮上使用onclick(),如下所示:
<input type="Submit" id="Padding" value="Sign up" onclick="Your_Javascript_Function()" class="btn btn-primary" />