2016-11-07 1 views
1

아약스를 통해로드하는 양식이 있습니다. 양식을 가져 오기 위해 보낸 매개 변수에 따라 양식에 확인란이 없거나 하나 이상의 확인란이있을 수 있습니다.체크 박스가 페이지에 있는지 jQuery 확인

페이지에 확인란이 있는지 확인하고 싶으면 선택하지 않은 경우 유효성 검사 중에 하나를 선택하라는 메시지가 표시됩니다.

존재하는 경우, 확인란의 등급이 같고 ID가 다릅니다.

<input type="checkbox" name="associatedClass" 
value="$associatedClsNumVal" class="getAssociatedClass" 
id="$associatedClsNumVal" /> 

최상의 접근 방법은 무엇입니까? 페이지/폼에 체크 박스가있는 경우 jquery "sense"를 사용할 수 있습니까?

감사합니다.


이전 게시물에 대한 도움에 감사드립니다. 같은 유형의 문제이므로 여기에 추가하고 있습니다.

이제 하나 이상의 체크 박스 그룹이있는 페이지가 있으며 각 그룹에서 하나의 체크 박스 만 선택되어 있는지 확인해야합니다.

페이지가로드 될 때까지 얼마나 많은 그룹이 있는지 모르기 때문에이를 확인하는 가장 좋은 방법은 무엇입니까?

감사합니다.

+1

좋고, 체크 박스, 다음'$ ('입력 [TYPE = 체크 박스])가 있는지' 긍정적 인 길이가 될 것입니다. – David

+1

Ditto'$ ('input [name = "associatedClass"]')'와'$ (". getAssociatedClass")' – mplungjan

답변

3

가장 쉬운 방법은 페이지에 유형 체크 박스 입력이 있는지 확인하는 것입니다. jQuery를 사용하면 input[type="checkbox"]과 같은 CSS 선택기를 사용하여 DOM에서 요소를 찾을 수 있습니다. .length과 결합하면 페이지에 얼마나 많은 광고가 있는지 알 수 있습니다. 당신은 당신이 특정 요소로 검색을 제한 할 수 있습니다 검증 싶지 않을 것이다 페이지의 다른 확인란이있을 수 있다면,이에 대한 전체 jQuery 코드는

if ($('input[type="checkbox"]').length) { 
    // Validate checkboxes 
} 

될 것이다. 예를 들어 ID가 myForm 인 특정 양식 내의 확인란의 유효성을 검사하려는 경우 양식을 선택하고 .find()을 사용하여 해당 양식 내에서만 확인란을 검색 할 수 있습니다.

if ($('#myForm').find('input[type="checkbox"]').length) 
{ 
    // Validate checkboxes 
} 

그러나 검증에 당신은 아마 개인적으로 그렇게하는 대신 각 입력을 확인 할 단지 우리가 모든 체크 박스와 다음 과정을 찾을 .each를 사용할 수있는 페이지에 적어도 하나의 확인란이 있는지 확인하기 위해 길이를 체크 한 번에 하나씩. 거기 시도하고 새로운 것을 확인하고 그것을 완벽하게 유효한입니다하지 않습니다 페이지에 아무도없는, 그래서 우리의 유효성 검사를하기 전에있을 경우 우리가 확인할 필요가없는 경우

$('input[type="checkbox"]').each(function() { 
    // Validate this checkbox 
}); 

이의 장점이다.

+0

나는 생각보다 쉬웠다. 고마워. – Gman

+0

@Gman 기꺼이 도와 드릴 수 있습니다. 다른 사람들이 앞으로도 같은 문제에 대한 해결책을 모색하는 것을 돕기 위해 답을 upvote하고 올바른 답으로 표시하는 것을 잊지 마십시오. – Styphon

2
$(':checkbox').length 

페이지의 모든 체크 박스 수를 받게됩니다. 보다 구체적으로 설명 할 필요가 있다면 공통 클래스를 제공하여이를 좁힐 수 있습니다.예를 들어

는 단지 클래스의 섹션 1 '로 체크 박스를 계산한다 :

var $checks = $('.section1:checkbox'); 
console.log('There are ' + $checks.length + ' checkboxes'); 

https://jsbin.com/bowasi/edit?html,js,console,output

관련 문제