2012-08-16 2 views
3

jQuery 플러그인을 사용하여 ASP.NET CheckBox 목록에 대한 유효성 검사 기능을 추가 할 수 있습니까? jquery 플러그인을 사용하여 클라이언트 측에서 모든 컨트롤의 유효성을 검사하고 있습니다. 텍스트 상자, 드롭 다운 목록 등. 어떤 이유로 그것은 Checkboxlist.In 순수 html로 작동하지 않습니다 checkboxlist 그것의 HTML 입력 확인란이있는 테이블이됩니다. 나는 확인란이 있는지 확인하고 jquery에 추가되었는지 확인하는 사용자 정의 함수를 썼습니다 유효성을 검사하지만 어떤 이유로 함수가 호출되지 않습니다.ASP.NET CheckBoxList 클라이언트 측 유효성 검사

jQuery.validator.addMethod('cb_selectone', function (value, element) { 

    return false; 
}, 'Please select at least one option'); 

나는 항상 false로 돌아가려고했지만 여전히 양식의 유효성을 검사했습니다. 아무 도움도 받으실 수 있습니다.

+0

jquery를 사용할 필요가없는 경우 어쩌면 도움이 될 수 있습니다. 샘플은 텍스트 박스이지만 checkboxlist에 사용할 수 있습니다. http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.customvalidator.clientvalidationfunction.aspx –

+0

html 마크 업 코드를 게시 할 수 있습니까? 또는 예를 들어? 아마도 구문 오류와 같은 명백한 것일 것입니다. –

+0

동일한 코드를 사용했습니다. 맞춤법 검사기가 정상적으로 작동합니다. 다른 코드가 문제가됩니다. 테스트를 위해 방금 항상 false를 반환했습니다.이 경우 유효성을 검사해서는 안되지만 유효성이 검사됩니다. –

답변

1

하나의 접근법이지만 jquery.validate를 사용하지 않습니다.

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<script type="text/javascript" src="Scripts/jquery-1.8.0.js"></script> 
<script type="text/javascript"> 
    function cb_selectone(src, args) { 
     var items = $("input[name^='cblTest']"); 
     for (i = 0; i < items.length; i++) { 
      if ($(items[i]).is(":checked")) { 
       args.IsValid = true; 
       return; 
      } 
     } 
     args.IsValid = false; 
    } 
</script> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:CheckBoxList runat="server" ID="cblTest"> 
      <asp:ListItem Text="Test A" Value="A"></asp:ListItem> 
      <asp:ListItem Text="Test B" Value="B"></asp:ListItem> 
     </asp:CheckBoxList> 
     <asp:CustomValidator ErrorMessage="Please select at least one.<br/>" ClientValidationFunction="cb_selectone" runat="server" /> 
     <asp:Button runat="server" ID="btnTest" Text="Submit" /> 
    </div> 
    </form> 
</body> 
</html> 
+0

고마워. 나는 이것을 전에 시도했다. 사용자 정의 검사기의 문제점은 필요한 각 컨트롤에 대해 하나의 검사기를 생성해야한다는 것이다. 좀 더 일반적인 것이 필요하다. –

+0

이 샘플을 살펴 본다. 나는 당신과 같은 문제가있다. 나도 그걸 해결 했어. http://stackoverflow.com/questions/11981229/custom-jquery-validation-function-not-firing –

+0

옳은 대답은 아니지만 필자는 자체 유효성 검사 프레임 워크를 작성하여 이와 비슷한 작업을 수행했습니다. –

관련 문제