如何使用keyup或input进行操作?javascript(jQuery)
How to do an operation with keyup or input? javascript (jQuery)
我遇到了一个问题,我有两个文本字段,在打开页面或reaload时默认都有一个值,我从MySQL和PHP获得的值,如下所示:
<input type="text" id="field1" value="<?php echo $first_value; ?>" />
<input type="text" id="utility" value="<?php echo $second_value; ?>" />
使用javascript,当我更改#field1
的值时,我想做减法并将结果显示为#utility
。
问题是操作的结果不正确,例如:
如果#field1
第一次是500,#utility
是1041.00,现在如果我把#field1
的值改为1000,#utility
的新值是-69.06,我想每次我删除或添加新数字时它都在做这个操作,但我不知道如何解决这个问题,这是我的javascript(jquery)代码:
$('#field1').on('input', function() {
var difference = parseFloat($(this).val());
var utility = $('#utility').val().replace(/,/g, '');
var total = utility - difference;
if (!total) { total = 0; }
$('#utility').val(parseFloat(Math.round(total * 100) / 100).toFixed(2));
});
在不添加额外字段的情况下,您的另一个选择是使用.on('blur',function(){} )
或仅使用.blur(function(){})
这将导致在输入离开字段强制刷新时执行操作。
我通过创建一个新的输入字段类型hidden
来解决我的问题,该字段的值与#utility
相同,我将其命名为#new_utilty
$('#field1').on('input', function() {
var difference = parseFloat($(this).val());
var utility = $('#new_utility').val().replace(/,/g, '');
var total = utility - difference;
if (!total) {
total = 0;
$('#utility').val(parseFloat(Math.round(utility * 100) / 100).toFixed(2));
} else {
$('#utility').val(parseFloat(Math.round(total * 100) / 100).toFixed(2));
}
});
这是我在没有Ajax调用的情况下的解决方案
相关文章:
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- Javascript(jQuery)给了我奇怪的结果
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- Javascript/jQuery中的并行Ajax调用
- 我可以在Javascript/jQuery中使用一个变量作为键吗
- Javascript/Jquery/PHP加载页面-如何
- Javascript/Jquery Blob not showing Chrome PDF
- 如何使用javascript/jquery获取iframe的URL的锚点属性
- OnClick/Onhover Javascript/jquery
- 如何从javascript/jquery中的复选框中获取布尔值
- javascript/jquery将utc转换为短格式的本地时间
- 在不设置协议的情况下,使用javascript/jquery更改iframe-src
- 如何向这个javascript/jquery函数添加参数
- 用JavaScript/jQuery点击图片,选中多个方框
- 使用Javascript/JQuery获取JSON GET数据
- 从数组中删除元素的最佳方法是:javascript/jquery
- Javascript/jQuery压缩一个图像正确的评论帖子,并使用Ajax Laravel 5.2保存到控制器中
- 用DRY方式Javascript/JQuery动态替换HTML
- 类似Javascript JQuery的库
- 如何在 Javascript/jQuery 中获取一些随机下拉列表的选定值