JavaScript输入文本框添加加号

JavaScript输入文本框添加加号,javascript,Javascript,我有一个关于JavaScript添加登录的问题,对此我有点困惑。我有这个输入文本框,我将被输入为50,它将加上50。我加上数字的结果,例如我输入50,结果是5050,这是完全错误的。有人能帮我吗 <!DOCTYPE html> <html> <head> <title>activity 2</title> <script type="text/javascript"> function computeSalary(){

我有一个关于JavaScript添加登录的问题,对此我有点困惑。我有这个输入文本框,我将被输入为50,它将加上50。我加上数字的结果,例如我输入50,结果是5050,这是完全错误的。有人能帮我吗

<!DOCTYPE html>
<html>
<head>
<title>activity 2</title>
<script type="text/javascript">
  function computeSalary(){
    var salaryData = document.form1.salary.value;
    var salary1 = salaryData  + 50;
    document.form1.newSalary.value = salary1;
  }
</script>
</head>
<body>
  <form name="form1">
    Enter the daily salary:
    <input type="text" name="salary" /><br />
    <input type="button" value="Compute" onClick="computeSalary();" /><br />
    <br />
    The new salary: <input type="text" name="newSalary" />
  </form>
</body>
</html>

活动2
函数computeSalary(){
var salaryData=document.form1.salary.value;
var salary1=salaryData+50;
document.form1.newSalary.value=薪水1;
}
输入每日工资:



新的薪金:
更改以下行:

var salary1 = parseInt(salaryData)  + 50; // Use parseInt or parseFloat

原因是JavaScript会将字符串和整数强制转换为字符串。因此,整数50被转换为一个字符串,然后连接起来。

您可以通过简单地添加一个加号,将要连接到您的值的字符串值转换为一个数字:

var salary1 = +salaryData  + 50;

在使用+运算符添加之前,必须将从输入控件获得的值转换为浮点或整数。在添加两个操作数之前,+运算符将两个操作数转换为同一类型。这是得到5050的主要原因,因为int类型的50被转换为string

使用此代码:

function computeSalary(){
    var salaryData = document.form1.salary.value;
    var salary1 = parseFloat(salaryData)  + 50;
    document.form1.newSalary.value = salary1;
}

对不起,我在编辑我的问题时屏幕跳转了,而它意外地编辑了你的问题。我把你的上一次修订卷退回了。@billycrogan,如果它解决了你的问题,你可以把它标记为答案,谢谢:)