2014-03-27 3 views
3

라디오 버튼 클릭시 div 기반을 숨기고 표시하려하지만 완벽하게 작동하지 않습니다. 현재 자바 스크립트 기능을 사용하여 콘텐츠 표시를 제어하고 있습니다.라디오 버튼을 클릭하여 div를 표시하고 숨기는 방법은 무엇입니까?

<input type="radio" name="data" onclick="udatabase()" id="udatabase"> Database 
    <input type="radio" name="data" onclick="ucsv()" id="ucsv"> CSV <br/> 
    <div id="ifCSV" style="display:none"> 
    <input name="csv" type="file" id="csv" accept=".csv" required/> <br/> 
</div> 

이 CSV에 클릭 한 후 HTML 페이지에서 응답이 없습니다 :

function udatabase() { 
    document.getElementById('ifCSV').style.display = "none"; 
} 
function ucsv() { 
    document.getElementById('ifCSV').style.display = "block"; 
} 

이 내 라디오 버튼입니다 :

자바 스크립트 코드입니다.

This is what html displayed

+0

작동합니다. 당신은 onCLick에서 Capital C를 사용하고 함수'onClick = ucsv(); 후에 세미콜론을 넣는다. –

+0

은 fiddle에서 작동한다. http://jsfiddle.net/Vinay199129/xDCM4/ – Rex

+0

그러나 내 프로젝트에서는 작동하지 않는다. –

답변

5

자바 스크립트의 onclick 함수 이름은 입력 텍스트 내부 사용자의 ID 이름과 동일 할 수 없습니다. 이름 중 하나를 변경해야합니다. 여기

HTML 코드 :

<input type="radio" name="data" onclick="udatabase()" id="tdatabase"> Database 
    <input type="radio" name="data" onclick="ucsv()" id="tcsv"> CSV <br/> 

이름을 변경 제대로 후에이 있어야합니다 작업

편집

<input type="radio" name="data" onclick="udatabase()" id="udatabase"> Database 
    <input type="radio" name="data" onclick="ucsv()" id="ucsv"> CSV <br/> 

후. 나를 위해

0
<script type="text/javascript"> 
window.onload = function() { 
    document.getElementById('ifTSH').style.display = 'none'; 
    document.getElementById('ifUSD').style.display = 'none'; 
} 

function yesnoCheck() { 
    var testA=document.getElementById('testAmount').value; 
    var dola=document.getElementById('fxd').value; 

    if (document.getElementById('s').checked) { 
     if(testA>50000){ 
     document.getElementById('ifTSH').style.display = 'block'; 
     document.getElementById('ifUSD').style.display = 'none'; 
     document.getElementById("ifUSD1").removeAttribute("required"); 
    } 
    else{ 
     document.getElementById('ifTSH').style.display = 'none'; 
     document.getElementById('ifUSD').style.display = 'none'; 
     document.getElementById("ifUSD1").removeAttribute("required"); 
    } 
    } 
    if (document.getElementById('d').checked) { 
     if((testA*dola)>50000){ 
     document.getElementById('ifTSH').style.display = 'none'; 
     document.getElementById('ifUSD').style.display = 'block'; 
     document.getElementById('ifUSD1').setAttribute("required", "true"); 
     } 
     else { 
      document.getElementById('ifTSH').style.display = 'none'; 
      document.getElementById('ifUSD').style.display = 'none'; 
      document.getElementById("ifUSD1").removeAttribute("required"); 
     } 
    } 
} 

관련 문제