2011-03-10 2 views
0

확인란이 선택되어 있으면 텍스트 상자가 활성화되어야합니다. 그렇지 않으면 텍스트 상자가 비활성화되어야합니다.체크 상자에서 텍스트 상자 사용 안함 및 사용 가능

이 코드가 작동하지 않는 이유를 모르십니까?

<script type="text/javascript"> 
function toggleTB(what){ 
if(what.checked){document.test.from_address.disabled=1} 
else{document.test.from_address.disabled=0}} 
</script> 

<% form_for(@test,:name => "test") do |f| %> 
<table> 
     <tr> 
      <td class="right upcase none"> 
       <%= f.label 'text_enabled', "Enable",:class => "capitalize none" %> 
       <%= f.check_box :text_enabled,:onclick => "toggleTB(this)" %> 
      </td> 
     </tr> 

     <tr> 
      <td class="right upcase none"> 
       <%= f.label 'from_address', "From Address",:class => "capitalize none" %> 
      </td> 
      <td> 
       <%= f.text_field 'from_address', :maxlength => 16 %> 
      </td> 
     </tr> 
</table> 
<% end %> 

아이디어가 있으십니까?

답변

0
이 나를 위해 일

의 말에 disabled=disabled을 설정해보십시오 ..also text_box의 ID는 test_from_address와 이름이됩니다 test[from_address]이됩니다.

+0

방법했던 그 일? ... 내 생각은 레일처럼 텍스트 필드의 id는 형태로 ... 그래서 난 당신이'document.getElementById를 수행해야합니다 생각했다'test_from_address' 될 것이라고했다 ("test_from_address"). disabled =! what.checked;' – rubyprince

+0

@rubyprince 감사합니다. 나는 갱신했다. –

0

하는

<script type="text/javascript"> 
    <!-- 
function toggleTB(what){ 
document.getElementById("test_from_address").disabled = !what.checked; 
} 
--> 
</script> 

<% form_for(@test,:name => "test") do |f| %> 
<table> 
     <tr> 
      <td class="right upcase none"> 
       <%= f.label 'text_enabled', "Enable",:class => "capitalize none" %> 
       <%= f.check_box :text_enabled,:onclick => "toggleTB(this)" %> 
      </td> 
     </tr> 

     <tr> 
      <td class="right upcase none"> 
       <%= f.label 'from_address', "From Address",:class => "capitalize none" %> 
      </td> 
      <td> 
       <%= f.text_field 'from_address', :maxlength => 16 %> 
      </td> 
     </tr> 
</table> 
<% end %> 
1
Try like this 

<script type="text/javascript"> 
    function toggleTB(what){ 
     if(what.checked){document.getElementById('from_address').disabled=1} 
    else{document.getElementById('from_address').disabled=0}} 
</script> 

<input type="checkbox" name="toggle" onclick="toggleTB(this)"/> 
<input type="input" id="from_address" /> 
1

disabled = truedisabled=false을 설정해보십시오 .. 라인 3

0
$(function() 
    { 
     $("#dropdown").change(function() 
     { 
      if ($(this).val()== "option1") 
      { 
       $("#textbox1").removeAttr("disabled"); 
       $("#textbox2").removeAttr("disabled"); 
      } 
      else 
      { 
       $("#textbox2").attr("disabled", "disabled"); 
       $("#textbox2").attr("disabled", "disabled"); 
      } 
     }); 
     $("#PaymentMode").change(function() 
     { 
      if ($(this).val()== "option2") 
      { 
       $("#textbox3").removeAttr("disabled"); 
       $("#textbox4").removeAttr("disabled"); 
       $("#textbox5").removeAttr("disabled"); 
      } 
      else 
      { 
       $("#textbox3").attr("disabled", "disabled"); 
       $("#textbox4").attr("disabled", "disabled"); 
       $("#textbox5").attr("disabled", "disabled"); 
      } 
     }); 
    }); 
+0

이 값은 드롭 다운의 값과 함께 작동합니다. –