Javascript 如果数字为负数,则将值设置为0.00
我已经构建了这个简单的租金可承受性java脚本计算器,我遇到的问题是最后一个框“租金可承受性文本框”有时会返回一个-(负数)如果数字为负数,我会尝试将该值设置为0.00 我已将此添加到我的脚本中:Javascript 如果数字为负数,则将值设置为0.00,javascript,jquery,Javascript,Jquery,我已经构建了这个简单的租金可承受性java脚本计算器,我遇到的问题是最后一个框“租金可承受性文本框”有时会返回一个-(负数)如果数字为负数,我会尝试将该值设置为0.00 我已将此添加到我的脚本中: if (RentAffordability < 0) RentAffordability = 0.00; if(租金承受能力
if (RentAffordability < 0) RentAffordability = 0.00;
if(租金承受能力<0)租金承受能力=0.00;
没有运气。以下是完整的代码:
函数运行(){
var百分比=40;
var Income=parseInt(document.getElementById('YearlyIncome').value);
var费用=parseInt(document.getElementById('MonthlyExpenses')。值);
var PercentageCalculated=收入/百分比;
//document.getElementById(“租金可承受性”)。值=计算的百分比-费用;
美元(“#租金可承受性”).val((计算百分比-费用).toFixed(2));
}
如果(租金承受能力<0)
租金负担能力=0.00;
(函数($){
$.fn.currencyInput=函数(){
这个。每个(函数(){
变量包装器=$(“”);
$(此).wrap(包装器);
$(this).change(function(){
var min=parseFloat($(this.attr(“min”));
var max=parseFloat($(this).attr(“max”);
var值=此.valueAsNumber;
如果(值<最小值)
值=最小值;
否则如果(值>最大值)
值=最大值;
$(this.val(value.toFixed(2));
});
});
};
})(jQuery);
$(文档).ready(函数(){
$('input.currency').currencyInput();
});
合并年收入:
合并每月费用:
你的租金负担能力:
计算你的租金
使用租金可承受性=Math.max(0,租金可承受性)
获取租金可承受性的0或当前值中的较大值
这样,当租金负担能力为负时,它将回落到0,这是我发现的一些问题
- if语句在run函数之外
- 在检查是否为负值之前,请先设置租金承受能力
- 您永远不会创建变量RentBehability(我假设它应该是名为/id RentBehability的输入标记)
function run() {
var PercentageRate = 40;
var Income = parseInt(document.getElementById('YearlyIncome').value);
var Expenses = parseInt(document.getElementById('MonthlyExpenses').value);
var PercentageCalculated = Income / PercentageRate;
var RentAffordability = PercentageCalculated - Expenses
if (RentAffordability < 0)
RentAffordability = 0.00;
$('#RentAffordability').val((RentAffordability).toFixed(2));
}
函数运行(){
var百分比=40;
var Income=parseInt(document.getElementById('YearlyIncome').value);
var费用=parseInt(document.getElementById('MonthlyExpenses')。值);
var PercentageCalculated=收入/百分比;
var租金承受能力=计算百分比-费用
如果(租金承受能力<0)
租金负担能力=0.00;
$(“#租金可承受性”).val((租金可承受性).toFixed(2));
}
if语句需要放在run()函数中。目前,您只在页面加载时检查它。您似乎也没有实际将值设置为租金可承受性
。我还建议使用jQuery事件处理程序来附加该逻辑,而不是过时的onclick
属性……显然,在将其放入输入之前,需要将负值设置为0.00。在您更改了碰巧放在文本框中的变量后,jQuery不会神奇地更改文本框内容。此外,不要使用
进行输出。使用
或
添加到上述注释中-看起来您需要检查如果((百分比计算-费用)<0)
只是好奇,这是否比OP尝试的更好<代码>如果(租金负担能力<0)租金负担能力=0.00
Justinas补充说,仍然有一个数字是否定的,我可以在Chrome开发工具上运行,但我发布的代码没有在browserI中运行。老实说,我不知道RentAffordability
是在哪里定义的,但我把它改成了否定的