2011-02-23 7 views
5

나는 서버 측에서로드하는 드롭 다운 목록이 있습니다. 서버 측에서 asp.net의 드롭 다운 목록에 대한 유효성 검사기

<asp:DropDownList ID="ddlOne" runat="server" CssClass="dropDrownClass" Width="80%"> 

는 드롭 다운로드 한 후 나는

을 추가하고 - 선택하세요 -

내가 있는지 확인하려면이이보다 선택한 경우 나는 것 오류 메시지를 표시하십시오. 내가 작성한 내용 :

<asp:CompareValidator ID="CompareValidator1" runat="server" 
          ControlToValidate="ddlOne" ValueToCompare="-- Please Select --" Operator="Equal" Type="String" ErrorMessage="CompareValidator"></asp:CompareValidator> 
         <asp:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" TargetControlID="CompareValidator1" runat="server"> 
         </asp:ValidatorCalloutExtender> 

그러나 드롭 다운 목록에서 아무 것도 선택하지 않으면 오류 메시지가 표시됩니다. 내가

<asp:CompareValidator ID="CompareValidator1" runat="server" 
          ControlToValidate="ddlOne" ValueToCompare="0" Operator="Equal" Type="Integer" ErrorMessage="CompareValidator"></asp:CompareValidator> 

내가되는 첫 번째를 제외하고, 모든 선택에 오류 메시지가 점점 오전에 발리를 변경할 때 - 선택하세요 -.

나 드롭 다운 목록의 주먹 항목을 확인하는 방법을 알려 주시기 바랍니다

ISSUE 2

나는 빨간색으로 오류 "Carson63000"를 보여주는 드롭 다운 목록 [아래에 이중 메시지 하나를 얻고있다 ] 그리고 팝업을 [validator call out]으로 표시합니다. 같은 메시지. 유효성 검사기 설명 선에만 메시지를 표시해야합니다.

답변

11

귀하의 유효성 검사기는 드롭 다운의 선택 항목이 아닌 텍스트을 비교합니다. 가장 쉬운 방법은 종종 "Please Select"항목의 값에 빈 문자열을두고 다른 항목에 대해 비어 있지 않은 값을 넣은 다음 RequiredFieldValidator을 사용하는 것입니다.

(ValueToCompare="-- Please Select --"Operator="Equal")은 드롭 다운의 값을 확인하고 "- Please Select -"와 동일하다는 것을 의미합니다. 그렇지 않은 경우 오류를 표시하십시오. 어떤 것이 필요한지 정확히 반대입니다. CompareValidator을 사용하는 방법을 원한다면 연산자를 Operator="NotEqual"으로 변경하고 싶을 것입니다.

+0

. 감사. 하지만 이중 메시지가 나타납니다. 콜 아웃 익스텐더에서 하나, 드롭 다운리스트에서 하나. 한 번만 메시지를 표시하고 싶습니다. – Chris

+1

@Chris, 나는 결코 ValidatorCalloutExtender를 사용하지 못했습니다. 그것은 ASP.NET AJAX의 것입니다. CompareValidator에'Display = "None"'을 추가하려고 했습니까? – Carson63000

+0

비교할 값이 빈 문자열이면 필수 필드 유효성 검사기 (http://msdn.microsoft.com/en-us/library/db330ayw(v=vs.71).aspx 참조)를 사용해야 함을주의하십시오. –

0

변경 운영자 값 : 그것은 잘 작동

<asp:CompareValidator ID="CompareValidator1" runat="server" 
    ControlToValidate="ddlOne" ValueToCompare="0" Operator="NotEqual" 
    Type="Integer" ErrorMessage="CompareValidator" /> 
관련 문제