js的if语句问题

functioncheck_money(){vargold=document.getElementById('gold').value;varismoney=docume... function check_money(){
var gold = document.getElementById('gold').value;
var ismoney = document.getElementById('money').value;
if(gold<ismoney){
return false;
}
else{
return true;
}
}

function tijiao(){
if (check_money()==false){
alert("余额不足!");
return false;
}

document.form2.submit();
return true;
}
我想写的是如果ismoney大于gold就false,现在的gold是100,但是ismoney除了"1,10,100",其它都是false,如果把gold或ismoney写成固定值,如“if(100<ismoney)”或“if(gold<100)”这样就不会出错,到底是为什么?有大神知道吗?
展开
 我来答
匿名用户
2014-08-08
展开全部
1:<input type="text" value="100" id="gold">
2:<input type="text" value="10" id="money">
<a href="javascript:tijiao();">tijiao</a>
<script>
function check_money(){
var gold = document.getElementById('gold').value;
var ismoney = document.getElementById('money').value;
if(gold<ismoney){
return false;
}
else{
return true;
}
}
function tijiao(){
if (!check_money()){
alert("余额不足!");
return false;
}
document.form2.submit();
}
</script>

if里不用在去写 ==false 因为本身函数返回的就是布尔的true和false,最后也不用返回true 没意义

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxlisno1
2014-08-08
知道答主
回答量:4
采纳率:0%
帮助的人:2.6万
展开全部


var gold = document.getElementById('gold').value;
var ismoney = document.getElementById('money').value;
改成
var gold = parseInt(document.getElementById('gold').value);
var ismoney = parseInt(document.getElementById('money').value);
就好了
value的值是字符串类型,是没有办法比较的,用parseInt()把它们转换成整数就行了
如果要转换成小数,用parseFloat()
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友924810a
2014-08-08 · 超过73用户采纳过TA的回答
知道小有建树答主
回答量:165
采纳率:0%
帮助的人:105万
展开全部
类型转换成float试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式