gpt4 book ai didi

Javascript 计算器未解答的问题

转载 作者:行者123 更新时间:2023-12-03 11:37:51 27 4
gpt4 key购买 nike

谢谢大家的帮助!除了数学之外,我还有几个问题。

1)当字段未填写时,我希望它发出警报并重新关注尚未填写的最上面的输入字段。例如)填写了 Apr,但没有填写贷款期限,因此焦点应返回到贷款期限文本框。

2) 在填写所有文本字段之前,我不希望显示每月付款。

我已经尝试过使用它,但它仍然不起作用:(

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- This is assign05.html -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> JavaScriptcript Mortgage Calculator </title>
<script>

//Display the total sum
function display(x, y, z) {
var num = x + y + z;
var n = num.toString();
document.getElementById("total").innerHTML = "Your monthly payment is " + n;
}

// Validate the form
function validateForm(x, y, z) {
var x = parseInt(document.forms["myForm"]["apr"].value);
var y = parseInt(document.forms["myForm"]["loanTerm"].value);
var z = parseInt(document.forms["myForm"]["loanAmount"].value);

// If statements
if (x==null || x=="") {
alert("APR must be filled out");
document.getElementById("apr").focus();
return false;
}
else if (y==null || y=="") {
alert("Loan Term must be filled out");
document.getElementById("loanTerm").focus()
return false;
}
else if (z==null || z=="") {
alert("Loan Amount must be filled out");
document.getElementById("loanAmount").focus()
return false;
}
else {
// Display
display(x, y, z);
}
return false;
}

//Reset the form (this isn't working)
function resetForm() {
document.getElementById("myForm").reset();
}
</script>
</head>
<body onLoad=document.getElementById("apr").focus();>
<form id="myForm" name="myForm" action="" onsubmit="validateForm(); return false;" method="post">
APR: <input type="number" id="apr" value=""><br/>
Loan Term: <input type="number" id="loanTerm" value=""><br/>
Loan Amount: <input type="number" id="loanAmount" value=""><br/>

<button onclick="myFunction()">Calculate Payment Button</button>
<input type="button" onclick="resetForm()" value="Reset form">
</form>
<div id="total"></div>
</body>
</html>

最佳答案

当对空字符串运行 parseInt() 时(这是获取空文本字段的 .value 时得到的结果),它将返回 NaN。简单的解决方案就是添加一个额外的检查。

if(x==null || x=="" || x.toString()=="NaN"){}

关于Javascript 计算器未解答的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26409331/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com