2013-12-18 3 views
0

Q : 입력란을 사용하여 입력 사용 여부를 설정 하시겠습니까?JS 체크 박스 입력 사용/사용 안함

각 확인란 옆에 입력 사용/사용 안 함. 그룹 수는 다양합니다 (i = 1,2,3, ... n). 기본 설정은 입력이 비활성화되고 확인란이 선택 취소되어 있습니다.

JsFiddle :http://jsfiddle.net/tDCB9/

HTML :

<input type="checkbox" name="group1" value=""> 
<input type="text" name="name11" class="stat" value=""> 
<input type="text" name="name12" class="stat" value=""> 
<input type="text" name="name13" class="stat" value=""> 

JS : 당신은 사용 후 확인란에 대한 변화() 핸들러를 작성하고 필요

$("input[name="group1"][type="checkbox"]").click(function() { 
    $("input[name="name11"][type="text"]").attr("disabled", !this.checked); 
    $("input[name="name12"][type="text"]").attr("disabled", !this.checked); 
    $("input[name="name13"][type="text"]").attr("disabled", !this.checked); 
}); 
+0

http://jsfiddle.net/tDCB9/12/ – asprin

답변

4

nextUntil()을 사용하여 Fiddle

+0

왜 안' $ (this) .nextUntil (': checkbox')'? –

+0

@RoyiNamir '
' 태그가 포함되어 있기 때문입니다. – David

+0

@David 예. didnt 고시 그 br :-) –

1

코드가 간단 견적/큰 따옴표 단지 질문, 작동,

$("input[name='group1'][type='checkbox']") 

Demo Corrected

0

이 시도 : 입력 필드는

$('input[type="checkbox"]').change(function(){ 
    $(this).nextUntil(':not(input:text)').prop('disabled', !this.checked) 
}).change() 

데모 사용할 수

$("input[name='group1'][type='checkbox']").click(function() { 
    if($(this).prop('checked')){ 
     $("input[name='name11'][type='text']").attr("disabled", 'disabled'); 
    } 
    else{ 
     $("input[name='name11'][type='text']").removeAttr("disabled"); 
    } 
}); 
0

여기에 working fiddle입니다.

$('input[type="checkbox"]').click(function() { 
    $(this).siblings('input').attr('disabled', this.checked); 
}); 

컨테이너의 입력 그룹을 구분하면됩니다.

0

$("input[name='group1'][type='checkbox']").click(function() { 
    $("input[name='name11'][type='text']").attr("disabled", !this.checked); 
    $("input[name='name12'][type='text']").attr("disabled", !this.checked); 
    $("input[name='name13'][type='text']").attr("disabled", !this.checked); 
}); 
0

당신은 간단한 선택기를 사용하십시오 :

$('input:checkbox').change(function(){ 
     $(this).nextUntil('br').prop('disabled', !this.checked) 
    }).change(); 
0

을 시도해보십시오이

$("input[name='group1'][type='checkbox']").click(function() { 
$("input[name='name11'][type='text']").attr("disabled", this.checked); 
$("input[name='name12'][type='text']").attr("disabled", this.checked); 
$("input[name='name13'][type='text']").attr("disabled", this.checked); 
}); 
관련 문제