본문 바로가기

자바스크립트

자바스크리트 select 이용한 계산 방법

 

 

 

2007년 이전 방식인데 현재는 잘 안됨.  (추억 소환용)

<!--3개의 select 박스의 값을 더하는 스크립트 시작-->
<script language="JavaScript">

function calculatePay() {

 

<!-- 2007년 브라우저 방식 현재 정상 동작 안됨 

var price1 = eval(document.mypay.select1.options.value);
var price2 = eval(document.mypay.select2.options.value);
var price3 = eval(document.mypay.select3.options.value);

-->

 

<!-- 2021년 04월 확인 크롬 정상 동작 -->

var price1 = (new Function ('return '+document.mypay.select1.value))();

var price2 = eval(document.mypay.select2.value);

var price3 = eval(document.mypay.select3.value);

 

document.mypay.pay.value = price1+price2+price3;


}
// -->
</script>
<!--3개의 select 박스의 값을 더하는 스크립트 끝-->
<!--아래와 같이 폼을 구성하세요-->
<form name=mypay method=POST>
<select size="1" name="select1" onChange="calculatePay()">
    <option value="0">선택하세요</option>
    <option value="100">100</option>
    <option value="200">200</option>
        <option value="300">300</option>
</select><br>

<select size="1" name="select2" onChange="calculatePay()">
    <option value="0" selected>선택하세요</option>
    <option value="1000">1000</option>
    <option value="2000">2000</option>
</select><br>

<select size="1" name="select3" onChange="calculatePay()">
    <option value="0" selected>선택하세요</option>
    <option value="10000">10000</option>
    <option value="20000">20000</option>
        <option value="30000">30000</option>
  </select><br>
<input type=reset value="재계산"><br>
합계
<input type=text name=pay size=15>원<br>
</form>
<!--폼 구성 끝-->