2016-07-25 2 views
0

드롭 다운 목록과 JavaScript로 간단한 계산기를 만들려고하는데 결과를 얻는데 어려움이 있습니다.HTML 간단한 드롭 다운 목록 및 결과

자바 스크립트에서 설정 값이 Office 인 경우 1411.21을 반환하는 코드를 작성했습니다. 그렇지 않으면 500을 반환합니다. 그러나 계산 버튼을 클릭하면 아무 것도 수행하지 않습니다.

이것은 내 HTML 코드입니다.

<html> 
<form method="post"> 
    <td>Setting : </td> 
     <select name="Setting" id="Setting"> 
       <option value="Office">Office</option> 
       <option value="HOPD">HOPD</option> 
     </select> 

<br/> 

    <td>Facility : </td> 
     <select name="Facility" id="Facility"> 
       <option value="100015">Mount Sinai, 123 Main Street, New York</option> 
       <option value="100016">NYU Medical, 25 North Broadway, New York</option> 
     </select> 




    <table border=1> 
     <tr> 
      <td>Product Size : </td> 
      <td><100sq cm</td> 
     </tr> 

     <tr> 
      <td>Number of DFU patients :</td> 
      <td>10</td> 
     </tr> 

     <tr> 
      <td>Patient co-pay % (based on wage adj.rate) :  </td> 
      <td>20%</td> 
     </tr> 
     <tr> 
      <td>Co-Pay percent actuallly collected : </td> 
      <td>75%</td> 
     </tr> 

     <tr> 
      <td></td> 
      <td> 
      <input type="button" id="button" value="calculate" onclick="settingValue();"> 
      </td> 
     </tr> 
     <tr> 
      <td>Result :</td> 
      <td> 
      <input type="text" id="result" placeholder="result"> 
      </td> 
     </tr> 

    </table> 
</br></br> 


    <table> 
     <tr> 
      <td>Medicare Payment Category</td> <td>High</td> <td>Low</td> 
     </tr> 
     <tr> 
      <td>Medicare Payment</td> <td id="medicarepayment" style="display: none"> 
      <td> 
     </tr> 
    </table> 
</form> 
</html> 

그리고 여기에 자바 스크립트 코드가 있습니다.

<script type="text/javascript"> 
     var mydata = { 
      'Mount Sinai': ['100015','123 Main Street','New york'], 
      'NYU Medical' : ['100016,'25 North Broadway','New York] 
      } 
    var firstNum; 
    var secondNum; 
    var settingValue; 

    function settingValue(){ 
     settingValue=document.getElementById("Setting").value; 
     document.getElementById("result").value=medicarePaymentCal(settingValue); 

    } 


    function medicarePaymentCal(value1){ 
     var result; 
     if(value1=="Office"){ 
      return 1411.21; 
     } else { 
      return 500; 
     } 


    } 

    function init() { 
     var button=document.getElementById("button"); 
      button.onclick=medicarePaymentCal(); 
    } 

</script> 

답변

1

그것은 당신이 document.getElementById("setting").value을 얻으려고 노력하는 것처럼 보이지만 실제 ID는 당 "설정"입니다

<select name="Setting"> 
      <option value="Office">Office</option> 
      <option value="HOPD">HOPD</option> 
    </select> 

document.getElementById("Setting").value

편집

확인에에서 getElementById를 변경해보십시오 , JSFiddle을 만들었습니다. https://jsfiddle.net/dktoxtne/1/

작동하는지 알려주세요. 내가 변경 한 모든 것을 기억하지 못하지만, name="Setting"id="Setting"과 몇 가지 다른 것으로 변경해야한다는 것을 기억합니다.

+2

또한 결과 엘리먼트는 읽기 전용으로 선언되지만 (typo'd이지만) 요소는 절대로 닫히지 않습니다. – Devsman

+0

document.getElementById ("Setting"). value로 변경했으며 여전히 작동하지 않습니다. –

+0

@Devsman이 제안 했으므로 결과 입력이 잘못되었습니다. –

0
function settingValue(){ 
       //settingValue=document.getElementById("setting").value; 
       var e = document.getElementById("Setting"); 
       var settingValue = e.options[e.selectedIndex].value; 
       document.getElementById("result").value=medicarePaymentCal(settingValue); 

      }