我对 MVC 很陌生,所以我很难解释,抱歉!
我有一个表单,我想在使用 post 方法发送之前对其进行验证。该表单位于 Index.cshtml 文件中并发布到 HomeController。我的问题是当我发送表单时它没有到达正确的 index() 方法(HomeController 中的第二个带有 CallMeNow 请求)。
有可能以这种方式解决这个问题吗?
这就是我在 HomeController.cs 文件中的内容:
// GET: /Home/
[HttpGet]
public ViewResult Index()
{
return View();
}
// Send CallMeNow Request.
[HttpPost]
public ViewResult Index(string txtCallMeNow)
{
if (txtCallMeNow != null)
{
// .. doing something here.
}
ViewBag.EmailSent = "Thank you.";
return View();
这是我在 Index.cshtml 文件中的:
这应该验证表单并发送它:
$('#callMeNow1').submit(function (e) { e.preventDefault(); var selectedCity = $('#txtCallMeNow').val(); if (selectedCity == 'enter phone number...') alert('enter phone number!'); else document.location = $(this).prop('action'); });
这是表格。它应该被发布到 HomeController:
@using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "callMeNow1" })) { <input type="text" id="txtCallMeNow" name="txtCallMeNow" onfocus="if(this.value != '') {this.value = '';}" onblur="if (this.value == '') {this.value = 'enter phone number...';}" value=" enter phone number..." /><br /> <input type="submit" class="call_me_now" value="" /> @ViewBag.EmailSent; }
谢谢!