1below我發佈了我的總編碼視圖。這裏驗證不是在文本框中觸發。我不知道如何解決這個問題。該視圖正在執行。如果我按下搜索文本框而不輸入文本框中的文本,它不驗證。另外告訴我,我必須使用TextBox或TextBoxFor。我對mvc3更加新鮮。請告訴我解決方案。驗證不在RAZOR中的文本框上觸發?
@model IEnumerable< ShoppingCart.Models.ShoppingClass>
@{
ViewBag.Title = "Display";
}
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
@Html.ValidationSummary(true)
@using (Html.BeginForm("Display","Home", FormMethod.Post, new { id = "loginForm" }))
{
//for (int i = 0; i < 1; i++)
//{
<table><tr>o<td> @Html.Label("BrandName")</td>
<td>@Html.TextBox("BrandName") <div> @Html.ValidationMessage("BrandName")</div></td>
<td></td></tr></table>
@* <table><tr><td>
@Html.LabelFor(o=>o[i].BrandName)</td>
<td>@Html.EditorFor(o => o[i].BrandName) <div>@Html.ValidationMessageFor(o => o[i].BrandName)</div></td>
<td></td></tr></table>*@
// }
<input type="submit" value="Search" name="Search" />
}
@{
var grid = new WebGrid(source: Model, defaultSort: "Drug_Code", rowsPerPage: 20);
<div id="grid">
@grid.GetHtml(tableStyle: "listing-border", headerStyle: "gridhead", footerStyle: "paging", rowStyle: "td-dark", alternatingRowStyle: "td-light",
columns: grid.Columns(
grid.Column("GenericName", format: @<text>@item.GenericName</text>),
grid.Column("BrandName", format: @<text>@item.BrandName</text>),
grid.Column("Purchaseqty", format: @<text>@item.Purchaseqty</text>),
grid.Column("Purchaseprice", format: @<text>@item.Purchaseprice</text>),
grid.Column("Drug_Code", format: @<text>@item.Drug_Code</text>),
grid.Column(header: "", format: (item) => Ajax.ActionLink("Add to Cart", "ADDTOCART",
new { brandname = @item.BrandName, purchaseqty = @item.Purchaseqty, drugcode = @item.Drug_Code }, new AjaxOptions { HttpMethod = "Post", OnSuccess = "ADDTOCART" }))
)
</div>
}
你爲你的文本框設置哪些驗證規則?你確定你做到了嗎? – 2012-08-02 06:44:36
你的模型是什麼樣的?您是否使用[StringLength(50,ErrorMessage =「最大長度爲50個字符」)]或[Required(ErrorMessage =「此字段是必需的」)]屬性來填充字段 – user1304444 2012-08-02 06:46:09
@ FSou1:[必需(ErrorMessage =「BrandNamest必填「)] public string BrandName {get;組; }我已經在 – Sham 2012-08-02 06:51:10