执行连接而不是添加javascript

时间:2013-11-26 11:56:37

标签: javascript jquery

这是我的剧本..

<script>
function myFunction()
{
var y=$("#text").val();
var z=10;
var x=y+z;
var demoP=document.getElementById("demo")
demoP.innerHTML="x=" + x;
}
</script>

它读取文本字段的值并添加值。但它执行连接而不是添加。我怎样才能解决这个问题。??

5 个答案:

答案 0 :(得分:1)

var y=parseInt( $("#text").val() );

答案 1 :(得分:1)

因为输入的值是文本。

您需要将其转换为数字。

var x = +(y) + z;

+(y)会安全地将其设为数字​​,如果是数字。

答案 2 :(得分:1)

这一行:

var y=$("#text").val();

返回一个字符串。

您需要做的是使用以下方法之一将此结果转换/强制转换为数字:

var y = parseInt($("#text").val(), 10);

var y = parseFloat($("#text").val()); //  returns a floating point number

var y = Number($("#text").val());

var y = +$("#text").val();

答案 3 :(得分:0)

尝试:

var y=parseInt($("#text").val());
var z=10;
var x=y+z;

答案 4 :(得分:0)

输入值始终是字符串,添加带数字的字符串将始终以字符串形式结束。

要解决此问题,请将字符串转换为parseIntparseFloat的数字,具体取决于值(整数或浮点数),或者只需将其转换为带有加号的数字类型在它面前的操作员:

var y = +$("#text").val();
var z = 10;
var x = y+z;