为什javascript通过document.geElementById("idname").value;获取表单的值都是字符串(String)?? 10

代码如下,不管我输入的是数字,还是空(不输)为什么弹出框显示的都是String<!DOCTYPEhtml><htmllang="en"><head><metacharse... 代码如下,不管我输入的是数字,还是空(不输)为什么弹出框显示的都是String

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
function abc(){

var a=document.getElementById("idname").value;
alert(typeof(a));
}
</script>
</head>
<body>
<input type="text" id="idname">
<input type="button" value="提交" onclick="abc();">
</body>
</html>
展开
 我来答
万能厨师长3i
2016-09-01 · TA获得超过160个赞
知道小有建树答主
回答量:359
采纳率:50%
帮助的人:151万
展开全部
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
function abc(){

var a=document.getElementById("idname").value;
                        var b=document.getElementById("dname").value;
alert(a+b);
}
</script>
</head>
<body>
<input type="text" id="idname">
        <input type="text" id="dname">
<input type="button" value="提交" onclick="abc();">
</body>
</html>
取到的就是字符串。比如第一个框输入10第二个框输入3。弹出的是103.而不是13.
追问
我知道取到的是字符串,问题是我想知道为什么输入的10,按理应该是数字类型呀,为什么取到的却是字符串
然后去远足
2016-09-01 · TA获得超过1万个赞
知道大有可为答主
回答量:4016
采纳率:83%
帮助的人:2426万
展开全部
你输入的只能是 "1",不会是 1。

跟语言无关。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
平行线逆行
2016-09-01 · TA获得超过199个赞
知道小有建树答主
回答量:177
采纳率:75%
帮助的人:97.5万
展开全部
对啊,你可以 a=a*1; 把他转为数值类型
追问
不是转换的问题呀,我是说如果我输入的是数字(123)应该返回的是number,我不输(空)应该返回的是Null,或者我输入true然后返回 Boolean,但是我这样写出来不管怎么输都是返回的都是String,
我就是想知道这是什么原因,是JavaScript语言本身就这样,还是我的代码写的有问题。
追答
本身就是这个样子的,还有输入框也不能输入别的类型的啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式