我试着做一个函数,从用户那里接收数据,如果输入的数据是整数,则通过串联来组合这些数据,如果输入的数据是整数,则通过获得和作为结果。我的主要问题是我不知道在if语句中使用什么条件来根据用户输入的数据执行JavaScript操作。
这是我为解决这类问题而发明的最后一段代码
function GetFullName() {
var first = document.getElementById('FirstName').value;
var last = document.getElementById('LastName').value;
if (first == "string" || last == "string") {
document.getElementById('FullName').value = first + " " + last;
} else {
var first = parseInt(document.getElementById('FirstName').value);
var last = parseInt(document.getElementById('LastName').value);
document.getElementById('FullName').value = first + last;
}
document.getElementById('FirstName').focus();
}<form>
First Name <input type="text" id="FirstName" />
Last Name <input type="text" id="LastName" />
<input type="button" value="submit" onclick="GetFullName()" />
<input type="reset" value="reset" />
<br />
Full Name <input type="text" id="FullName" />
</form>
发布于 2020-06-14 04:09:22
当你得到一个元素的值时,它总是一个字符串,
您可以通过typeof first检查变量类型
对于您的特定问题,如果您想检查用户是否输入了整数,则必须使用isNaN
if(isNaN("123")) {
} else {
//this executes
}总而言之,新代码是:
if (isNaN(first) || isNaN(last)) {
document.getElementById('FullName').value = first + " " + last;
} else {
document.getElementById('FullName').value = parseInt(first) + parseInt(last);
}https://stackoverflow.com/questions/62364982
复制相似问题