javascript - JavaScript 计算不会打印结果
问题描述
我有这个代码
$(function() {
if(document.getElementById('price') !== null && document.getElementById('dp') !== null){
var price = document.getElementById('price').value;
var deposite = document.getElementById('dp').value;
document.getElementById('remained').value = parseInt(price)-parseInt(deposite);
}
});
我的表单中的这个字段
<div class="col-md-3">
<label for="price">Price *</label>
<input type="number" class="form-control" id="price" name="price">
</div>
<div class="col-md-3">
<label for="dp">DP *</label>
<input type="number" class="form-control" id="dp" name="dp">
</div>
<div class="col-md-3">
<label for="remained">Remained *</label>
<input type="number" class="form-control" id="remained" name="remained">
</div>
逻辑很简单:
- 获取价格
- 获得DP
- 打印减号导致剩余输入
但不知何故,它不会在剩余输入中打印任何内容。
知道我做错了什么吗?
解决方案
您的代码在页面加载时执行,并且输入的值为空。
您应该像以下方式在某些事件上执行代码:
$(function() {
$('#dp, #price').on('input', function(){
if(document.getElementById('price') !== null && document.getElementById('dp') !== null){
var price = document.getElementById('price').value;
var deposite = document.getElementById('dp').value;
document.getElementById('remained').value = parseInt(price)-parseInt(deposite);
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col-md-3">
<label for="price">Price *</label>
<input type="number" class="form-control" id="price" name="price">
</div>
<div class="col-md-3">
<label for="dp">DP *</label>
<input type="number" class="form-control" id="dp" name="dp">
</div>
<div class="col-md-3">
<label for="remained">Remained *</label>
<input type="number" class="form-control" id="remained" name="remained">
</div>
推荐阅读
- java - 无法使用 Intent.ACTION_SEND_MULTIPLE 找到工作解决方案,以便将多个图像附加到电子邮件中
- c# - WeakEvent 的事件监听器可以随时被垃圾回收删除吗?
- xslt - 根据唯一值生成 Node XSLT
- oracle - 通过 Migration Wizard 离线进行 Sybase 到 Oracle 表迁移
- amazon-cloudformation - 自动上传胶水脚本
- android - 房间内的 Android 数据库视图
- javascript - 如何在javascript中对数组值求和,如chartjs数据数组和输入值总和
- android - Android,showProgress() 和 hideProgress() 正确
- php - 如何在php中找到一个字符串并选择它到最后(未知)
- python - Python中的8个拼图模式数据库