2009-12-01 1 views
0

데이터의 유효성 검사를 여러 행 :경우 xval 나는 다음과 같은 스키마가있는 테이블의 이름 할인이

PK DiscountID은 (

FK의 CustomerID가

금액의 돈

이름 varchar를 int로 (50)를 int로)

그래서 고객과 관련된 모든 할인을 표시하고 있습니다. 각 고객에게는 3 개의 할인 기록이 있습니다.

양식을 생성 할 때 올바르게 처리하기 위해 고유 한 편집을 위해 연결된 텍스트 상자의 ID와 이름을 입력하십시오.

내 필드 이름이 스키마 이름 대신 '양'의 'Amount_1를'일치되지 않기 때문에, 경우 xval를 사용하여 유효성을 검사 할 , 그것을 필드의 유효성을 검사하지 않습니다.

어떻게 작동합니까?

예를 단순화하기 위해 생략 한 몇 가지 다른 필드가 있으므로 고유 고객에 대해 3 가지 할인을 모두 하나의 레코드로 결합 할 수 없습니다. 나는 3 줄의 각 고객에 대해 3 할인을해야합니다. 여기

는 일부 코드입니다 :

<form method="post" action="ProcessUpdate"> 

<table> 

<tr> <td> Discount 1 </td> <td> <%= Html.TextBox("Amount_1") %></td></tr> 
<tr> <td> Discount 2 </td> <td> <%= Html.TextBox("Amount_2") %></td></tr> 
<tr> <td> Discount 3 </td> <td> <%= Html.TextBox("Amount_3") %></td></tr> 

<tr> <td> <input type="submit" value="submit"/> </td> </tr> 

</table> 
</form> 

<%= Html.ClientSideValidation<Discount>() %> 

여기 내 메타 데이터

[MetadataType(typeof(DiscountMetaData))] 
    public partial class Discount 
    { 
     public class DiscountMetaData 
     { 
      [Required(ErrorMessage = " [Required] ")] 
      public string Amount { get; set; } 
     }    
    } 

그 일을하는 방법에 어떤 아이디어가?

답변

3

나는 접두사와 비트를 연주했는데이이 작업을 수행 할 수있는 방법입니다 :

먼저 당신이 배설 접두사를 가지고 텍스트 상자에 이름을해야하지만, 동일한 속성 이름 "양"다음 첨부 할 JQuery와 유효성 검사기 각 접두사에 대해 Html.ClientSideValidation을 세 번 호출하여 각 필드에

<form method="post" action="ProcessUpdate"> 

<table> 

<tr> <td> Discount 1 </td> <td> <%= Html.TextBox("discount1.Amount") %></td></tr> 
<tr> <td> Discount 2 </td> <td> <%= Html.TextBox("discount2.Amount") %></td></tr> 
<tr> <td> Discount 3 </td> <td> <%= Html.TextBox("discount3.Amount") %></td></tr> 

<tr> <td> <input type="submit" value="submit"/> </td> </tr> 

</table> 
</form> 

<%= Html.ClientSideValidation<Discount>("discount1") %> 
<%= Html.ClientSideValidation<Discount>("discount2") %> 
<%= Html.ClientSideValidation<Discount>("discount3") %> 

희망이

+0

가 네, 도움이 도움이! 그것은 정확하게 내가 감사를 찾고 있었던 것이었다! – Gabe