我是Javascript的noob,但我試圖在我的網站上實現一些用戶可以輸入數量的內容,並且小計在輸入時動態更新。 例如:如果商品是每件10美元,並且用戶在文本字段中鍵入5,我希望它在文本框旁邊顯示$ 50。很簡單的乘法,但我不知道如何用Javascript做到這一點。不知何故,我認爲onKeyPress?謝謝!作爲用戶輸入數字的Javascript計算器
3
A
回答
5
假設下面的HTML:
<input type="text" id="numberField"/>
<span id="result"></span>
的JavaScript:
window.onload = function() {
var base = 10;
var numberField = document.getElementById('numberField');
numberField.onkeyup = numberField.onpaste = function() {
if(this.value.length == 0) {
document.getElementById('result').innerHTML = '';
return;
}
var number = parseInt(this.value);
if(isNaN(number)) return;
document.getElementById('result').innerHTML = number * base;
};
numberField.onkeyup(); //could just as easily have been onpaste();
};
這裏有一個working example。
0
您應該處理'onkeyup'和'onpaste'事件,以確保您通過鍵盤和剪貼板粘貼事件捕獲更改。
<input id='myinput' />
<script>
var myinput = document.getElementById('myinput');
function changeHandler() {
// here, you can access the input value with 'myinput.value' or 'this.value'
}
myinput.onkeyup = myinput.onpaste = changeHandler;
</script>
同樣,使用getElementById
和元素的innerHTML
屬性設置元素的內容時要顯示的結果。
+0
是'onpaste'被認爲是標準嗎? onchange可能是一個很好的選擇。 – lincolnk 2010-09-21 05:19:39
相關問題
- 1. 將操作員作爲用戶輸入的計算器
- 2. JavaScript計算器 - 如何獲得輸入字段的數字?
- 3. 匹配用戶輸入並通過數字計算輸入C++
- 4. 使用log4cxx作爲輸入計數器
- 5. 計算字符串輸入的字數
- 6. javascript數組輸入用戶和平均值計算
- 7. 根據用戶的輸入計算字數
- 8. 使用鍵盤作爲XAML和C#計算器的輸入
- 9. 如何將BMR計算器輸出更改爲舍入數字?
- 10. TypeError用戶輸入值的計算
- 11. 用戶輸入字符串後,程序不計算函數
- 12. 計算器輸入是字符串
- 13. 用Python計算用戶輸入時間
- 14. javascript:計算文本輸入中的數字
- 15. JavaScript - 獲取用戶輸入並用於計算以驗證值
- 16. 根據用戶輸入計算已用時間Javascript
- 17. 重置計算器輸入框爲js
- 18. 與用戶輸入的Javascript倒計時
- 19. 如何在計算中使用用戶輸入的字符?
- 20. 計算平均數,中位數和用戶輸入的整數
- 21. 使用用戶輸入的動態計算器?
- 22. 使用jQuery計算javascript中兩個輸入字段的乘積
- 23. 分數計算器輸入錯誤
- 24. 如何計算用戶輸入中字母的頻率?
- 25. 如何計算用戶在C#中輸入的字符串?
- 26. 在用戶輸入時計算列表中出現的數字的數量
- 27. 字數組輸入和輸出並計算輸入量
- 28. Rails 3/javascript - 動態重新計算字段作爲輸入變化?
- 29. 我的javascript計算器不起作用
- 30. javascript 101:銷售稅計算器不響應數據輸入
啊哈!這完美的作品!還有一件事,是否有一種方法可以在用戶輸入任何內容之前,爲文本字段中的默認值計算相同的內容?謝謝:) – RobHardgood 2010-09-21 05:04:37
@RobHardgood,我編輯了我的答案。試試吧,它應該工作。 – 2010-09-21 05:11:34
所以呢......再次感謝! – RobHardgood 2010-09-21 05:19:23