드롭 다운 목록의 선택에 따라 입력란에 입력 한 값에 대한 유효성 검사를 수행하는 기능을 만들었습니다 .. ..suppose 선택한 드롭 다운 목록이 금액 인 경우 텍스트 상자가 10 개 사이에 있어야합니다. t0 20 이처럼 두 개의 유효성 검사가 더 있습니다. 그 목적을 위해 하나의 텍스트 상자와 하나의 dropdwonlist 및 하나의 단추가 내보기에 있습니다.사용자 지정 유효성 검사 속성이 버튼 클릭에 대해 작동하지 않습니다
텍스트 상자에 값을 30으로 입력하고 드롭 다운 목록 항목을 "Amount"로 설정 한 다음 제출 단추를 클릭하면보기에 오류 메시지가 표시되지 않습니다 (텍스트 상자를 비워두고 제출 단추를 누르면 오류 메시지가 표시되지만 표시되지 않음). 유효성을 검사하기 위해 작성된 사용자 정의 함수 자체 서버 측 사람) 는 내가 postValues 방법에 중단 점을 넣어 가지고 있지만이
그것에 대해내가
public class CrossFieldsTxtboxesController : Controller
{
public ActionResult Index()
{
var itemsforDropdown = new List<SelectListItem> {
new SelectListItem{ Text = "Amount" , Value = "Amount"},
new SelectListItem{Text= "Pound", Value ="Pound"},
new SelectListItem {Text ="Percent", Value ="percent"}
};
ViewData["Listitems"] = itemsforDropdown;
return View("DdlCrossFields");
}
[HttpPost]
public ActionResult PostValues(CrossFieldValidation model)
{
if (!ModelState.IsValid)
{
return View(model);
}
else
{
return RedirectToAction("DdlCrossFields");
}
}
}
)이 (컨트롤러 부분처럼 수행하고이 내 시야는 ... 타격하지 일부
@model MvcSampleApplication.Models.CrossFieldValidation
@{
ViewBag.Title = "DdlCrossFields";
}
<h2>DdlCrossFields</h2>
@using (Html.BeginForm())
{
<div class ="editor-field">
@Html.TextBoxFor(m => m.TxtCrossField)
@Html.ValidationMessageFor(m=>m.TxtCrossField)
</div>
@Html.DropDownList("Listitems",ViewData["Listitems"] as SelectList)
<input id="PostValues" type="Submit" value="PostValues" />
}
이 내 모델 부분
public class CrossFieldValidation
{
public string DDlList1
{ get; set; }
[Required(ErrorMessage = "Quantity is required")]
[Display(Name= "Quantity:")]
[ValueMustbeInRange]
[NumericAttributes]
public string TxtCrossField
{ get; set; }
}
하나 HA는 것 왜 어떤 버튼을 클릭해도 작동하지 않는 아이디어, 어떤 제안도 감사 할 것입니다.
질문은 현재 MVC3 및 MVC4로 태그가 지정됩니다. 당신은 실제로 사용하고 있습니까? –
Visual Studio 2012를 사용하고 있습니다 ... 그리고 mvc 4 –