如何从文本编辑器中获取用户名和密码,以便将值传递到MVC中的Actionlink



我想在ActionLink中传递loginId和Password的值以进行登录,这样就可以比较数据库中的Id和pwd。。下面提到了我的查看代码

Login Id:  @Html.EditorFor(Model => @Model.u_name, new { id = "tb_username", maxlength = "10", @class = "input1"})
Password:  @Html.EditorFor(Model=>Model.pwd,new { id = "tb_pwd",@class = "input1"})
@Html.ActionLink("MVC_LOginDemo", "Login", "Home", new {})

在具有Http属性的控制器中Craete Action

[HttpPost]
public ActionResult Login(yourModelName objModel)
{
  if (ModelState.IsValid)
    {
      var username= objModel.u_name;
      var password=objModel.pwd;
     // get username and password from db and compare it with submitted value
    }
}

将值传递到控制器中的操作方法的最佳方式是使用模型。由于您已经有了模型,我建议不要使用ActionLink,将您拥有的所有东西都包含在表单中,并使用提交按钮使表单提交。或者写一些jquery来检测点击Actionlink并提交表单。这应该对你有用。

样本代码(更多的是伪代码)

@Html.BeginForm(id="loginForm")
{
  Login Id:  @Html.EditorFor(Model => @Model.u_name, new { id = "tb_username", maxlength = "10",    @class = "input1"})
  Password:  @Html.EditorFor(Model=>Model.pwd,new { id = "tb_pwd",@class = "input1"})
  @Html.ActionLink("MVC_LOginDemo", "Login", "Home", new {})
}

JavaScript部分

$("MVC_LOginDemo").click(){
    $("loginForm").submit();
}

我认为应该这样。希望这对你有帮助。

最新更新