いくつかのテキストボックスがあるかみそりのビューがあります。
テキストボックスの1つまたは他の3つを選択し、それらの選択肢の少なくとも1つにテキストを入力しないと送信できないようにしたいと思います...IE社会保障番号を入力できます、または人の姓名と生年月日を入力できます。最後のオプションには、姓名とDOBを入力する必要があります。これは目立たない検証を使用して可能ですか?以下は私のparialです
<div id="searchByDemographicsDiv"style="float: left;width: 50%; display:inline; ">
@*@using(Html.BeginForm("SearchByDemographic", "SearchPatients",FormMethod.Post, new{ id = "searchByDemographics"})){*@
@using (Ajax.BeginForm("SearchByDemographic", "SearchPatients", null, new AjaxOptions { HttpMethod = "POST", LoadingElementId = Url.Content("~/Images/ajax-loader.gif"), OnSuccess = "binddata", OnFailure = "FailAlert" }, new { id = "searchByDemographics" })){
<ul>
<li>@Html.Label("SSN", new { @for = "SSN" }) <br />@Html.TextBox("SSN", null, new { id = "SSN", name = "SSN", @class = "SSN" })</li>
</ul>
<ul>
<p>Or</p>
</ul>
<ul>
<li>@Html.Label("FirstName", new { @for = "FirstName" }) <br />@Html.TextBox("FirstName", null, new { id = "FirstName", @class = "demoGrphcs", name = "FirstName" })</li>
<li>@Html.Label("LastName", new { @for = "LastName" }) <br />@Html.TextBox("LastName", null, new { id = "LastName", @class = "demoGrphcs", name = "LastName" })</li>
<li>@Html.Label("dateOfBirth", new { @for = "dateOfBirth" }) <br />@Html.TextBox("dateOfBirth", null, new { id = "dateOfBirth", @class = "demoGrphcs", name = "dateOfBirth" })</li>
<li>@Html.Label("Address1", new { @for = "Address1" }) <br />@Html.TextBox("Address1", null, new { id = "Address1" })</li>
<li>@Html.Label("Address2", new { @for = "Address2" }) <br />@Html.TextBox("Address2", null, new { id = "Address2" })</li>
<li>@Html.Label("City", new { @for = "City" }) <br />@Html.TextBox("City", null, new { id = "City" })</li>
<li>@Html.Label("State", new { @for = "State" }) <br />@Html.TextBox("State", null, new { id = "State" })</li>
<li>@Html.Label("Country", new { @for = "Country" }) <br />@Html.TextBox("Country", null, new { id = "Country" })</li>
<li>@Html.Label("PostCode", new { @for = "PostCode" }) <br />@Html.TextBox("PostCode", null, new { id = "PostCode" })</li>
</ul>
<input type="submit" value="Search By Demographics" class="button" id="submitDemo"/>
}
</div>
基本的に、ユーザーがSSNまたはその他の人口統計情報で検索できるようにします。firstNamelastNameとDateOfBirthは必須フィールドです。SSNで検索する場合は、それを必須フィールドにします。私が知っている非常に複雑です。
更新**フォーム要素の元の検証**更新
$("#searchByDemographics").validate({
rules: {
SSN: {
require_from_group: [1, ".SSN"]
},
FirstName: {
require_from_group: [1, ".demoGrphcs"]
},
LastName: {
require_from_group: [1, ".demoGrphcs"]
},
DateOfBirth: {
require_from_group: [1, ".demoGrphcs"]
}
},
messages : {
SSN: 'Please Enter either a valid SSN or Demographic Info below',
FirstName: 'First name is required',
LastName: 'Last name is required',
DateOfBirth: 'Date of Birth is required'
}
});