【发布时间】:2016-02-14 10:02:54
【问题描述】:
所以我是一个非常新的 ASP.NET MVC,几个月前我介绍了 ASP.NET,不幸的是几乎忘记了所有内容:(
我的任务是向页面添加一个查找按钮,该按钮从文本框中接收用户名并验证该用户名是否有效。
我花了好几个小时试图让它工作。不幸的是,我真正需要做的是坐下来几个星期,重新自学并学习 javascript、jquery、asp.net mvc。我将学习这一切,但这个任务很小而且很具体,需要花费数周时间学习语言和框架才能开始解决问题。
这是我现在的位置:
控制器结构:
public class NewUserRequestController : Controller
{
// GET: NewUserRequest
public ActionResult Index()
{
return View(new NewUserRequest());
}
[HttpPost]
[ValidateAntiForgeryToken()]
public ActionResult LookupLDN(ITFormsLibrary.NewUserRequest req)
{
//Code that Verifies user etc
return View(req);
}
[HttpPost]
[ValidateAntiForgeryToken()]
public ActionResult Submit(ITFormsLibrary.NewUserRequest req)
{
//Code that handles submission validation & errorvalidation
return View("Index", req);
}
}
现在在视图中,我尝试过搞砸:
@using((Ajax.BeginForm("LookupLDN", "NewUserRequest", FormMethod.Post, new AjaxOptions { UpdateTargetId = "NewUserIfo"}, new { @class = "form-inline", role = "form" }))
只是发现我不能嵌套表单。
我试过了:
@Ajax.ActionLink("Lookup", "LookupLDN", "NewUserRequest", new { Model},null, new { @class = "form-inline", role = "form" })
和
@HTML.ActionLink("Lookup", "LookupLDN", "NewUserRequest", new { Model})
由于某种原因,两者都返回 404。
我也试过了:
<input type="button" value="Lookup" onclick="return lookupLDN()"/>
但是,我不知道如何构造一个 javascript 语句来处理异步 POST? - 我应该尝试发布吗?
如果你们中的任何人了解我想要完成的工作并能提供帮助,我将不胜感激。谢谢!
【问题讨论】:
-
您可以为此使用
[Remote]属性 - 请参阅 How to: Implement Remote Validation in ASP.NET MVC -
@StephenMuecke -
[Remote]属性必须是 .NET 中最不为人知但功能最强大的数据验证标签之一。
标签: javascript c# asp.net asp.net-mvc-4 razor