所以基本上,我看到';'突然出现。我不知道它来自哪里,也没有明显的来源。
我在这个测试网站上没有javascript或css。
我的模特:(不重要)
public class RegisterAccountViewModel
{
public long? Id { get; set; }
[Required]
public string FirstName { get; set; }
[Required]
public string LastName { get; set; }
[Required]
public string Email { get; set; }
[Required]
public string PhoneNumber { get; set; }
[Required]
public string AccountType { get; set; }
public string OrganizationName { get; set; }
}
视图(Test.cshtml):
@model RegisterAccountViewModel
@{Layout = null;}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Test</title>
</head>
<body>
<div>
<input type="text" placeholder="FirstName"/>
<br/>
@Html.TextBoxFor(m => m.LastName, new {placeholder = "Last Name" });
</div>
</body>
</html>
控制器
public class LoginController : Controller
{
[HttpGet]
public ActionResult Index()
{
return View();
}
[HttpGet]
public ActionResult Test()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Register(RegisterAccountViewModel model)
{
return null;
}
}
是什么给出了?
为了确保它不是我的任何问题,我使用默认模板创建了一个新的mvc网站并添加了一个文本框;结果与下图中的结果相同
答案 0 :(得分:4)
删除 LastName TextBoxFor 末尾的分号;
。
@Html.TextBoxFor(m => m.LastName, new {placeholder = "Last Name" }); //<-- remove this semicolon
注意: - 在razor(MVC)语法;
中只有在@{}
内编写一些C#代码时才需要;
}在html助手扩展方法的末尾。
答案 1 :(得分:2)
您必须删除&#39;;&#39;在您视图的结尾处:
@Html.TextBoxFor(m => m.LastName, new {placeholder = "Last Name" })