0
任何幫助將不勝感激。我使用帶小數點的onChange命令添加JavaScript字段,但是當onChange命令移回選項「NO」刪除數字時(例如1.7),它只會刪除1.69999而不是1.7。用JavaScript添加和減法「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>
謝謝Nolo。還有一個問題,如果我想改變這些值呢?示例將1.7更改爲value =「」,並將value =「19.3」更改爲value =「」當我這樣做時,轉到頁面並放入一個值以添加我得到的NaN。你能幫我解決嗎? – Adder 2013-03-26 13:29:11
@Adder:小心如何從頁面中提取值 - 當value =「」時,parseInt(「」)是(未定義),這可能是NaN來自的地方。嘗試在使用數值時使用「0」,或在執行轉換之前檢查。 – Nolo 2013-03-26 20:16:09