도움이 될 것입니다. 소수점이 포함 된 onChange 명령을 사용하여 JavaScript 필드를 추가 할 예정이지만 onChange 명령을 숫자 (예 : 1.7)를 제거하는 옵션 "NO"로 다시 이동하면 1.69999는 제거되고 1.7은 제거되지 않습니다.자바 스크립트 "onchange"로 더하기 및 빼기
아래는 내가 사용하고있는 onChange 코드입니다.
<div id="onewindow">
<label for="txtoneside" class="editor-label"><strong>1 Side </strong></label>
<div align="right">
<input type = "text" name = "txtoneside" id="txtoneside" value = "1.7" />
<select name="txtoneside_slider" id="txtoneside_slider" data-role="slider" data-mini="true" onChange="javascript: if(this.value=='yes'){ document.getElementById('txtgrandtotal').value= parseFloat(document.getElementById('txtgrandtotal').value) + parseFloat(document.getElementById('txtoneside').value); calculate()}
if(this.value=='no'){ document.getElementById('txtgrandtotal').value= parseFloat(document.getElementById('txtgrandtotal').value) - parseFloat(document.getElementById('txtoneside').value); calculate()}"/>
<option value="no">No</option>
<option value="yes">Yes</option>
</select>
</div>
<div id="twowindow">
<label for="txtoneside" class="editor-label"><strong>2 Side </strong></label>
<div align="right">
<input type = "text" name = "txttwoside" id="txttwoside" value = "19.3" />
<select name="txttwoside_slider" id="txttwoside_slider" data-role="slider" data-mini="true" onChange="javascript: if(this.value=='yes'){ document.getElementById('txtgrandtotal').value= parseFloat(document.getElementById('txtgrandtotal').value) + parseFloat(document.getElementById('txttwoside').value); calculate()}
if(this.value=='no'){ document.getElementById('txtgrandtotal').value= parseFloat(document.getElementById('txtgrandtotal').value) - parseFloat(document.getElementById('txttwoside').value); calculate()}" />
<option value="no">No</option>
<option value="yes">Yes</option>
</select>
</div>
<div id="grandtotal">
<label for="txtgrandtotal" class="editor-label"><strong>JOB TOTAL</strong></label>
<div align="right">
<input type = "text" name = "txtgrandtotal" id="txtgrandtotal" value = "0" />
</div>
</div>
감사합니다. 한 가지 더 질문합니다. 값을 변경하려면 어떻게해야합니까? 예를 들어 1.7을 value = ""로 변경하고 value = "19.3"을 value = ""로 변경합니다. 이렇게하면 페이지로 이동하여 값을 추가하여 NaN을 얻습니다. 그걸 도와 주실 수 있겠습니까? – Adder
@Adder : 페이지에서 값을 추출하는 방법에주의하십시오. value = "", parseInt ("")가 (정의되지 않음) 일 때 NaN이 나오는 곳이 될 수 있습니다. 숫자 값으로 작업 할 때는 "0"을 사용하거나 변환하기 전에 확인하십시오. – Nolo