当我用语句parseInt(a)时,变量a是文本框输入的值,如果输入是字母字符串时导致页面死机。
有什么方法解决?
程序如下:
<script type="text/javascript">
function grdd(a,b)
{
var minvalue=a*b
var c
while(1)
{
c=a%b
if(c==0)
break
a=b
b=c
}
minvalue/=b
return minvalue
}
function oncheck(){
var a=document.all.login.A.value;
var b=document.all.login.B.value;
if(a==null||a=="")
{
alert("请输入数字a")
}else if(b==null||b==""||b==0)
{
alert("请输入数字b")
}else
{
document.all.login.resault.value=grdd(parseInt(a),parseInt(b))
}
}
有什么方法解决?
程序如下:
<script type="text/javascript">
function grdd(a,b)
{
var minvalue=a*b
var c
while(1)
{
c=a%b
if(c==0)
break
a=b
b=c
}
minvalue/=b
return minvalue
}
function oncheck(){
var a=document.all.login.A.value;
var b=document.all.login.B.value;
if(a==null||a=="")
{
alert("请输入数字a")
}else if(b==null||b==""||b==0)
{
alert("请输入数字b")
}else
{
document.all.login.resault.value=grdd(parseInt(a),parseInt(b))
}
}
解决方案 »
- js 修改 margin的参数
- 求助:页面自动滚屏与拖动屏幕功能相结合
- 100分,100分,100分,求JS获取“客户端”的“桌面”位置,高手请进,100分,100分,100分
- 求可以多个漂浮广告同时在一个页面漂浮移动的代码?
- 怎样使用JAVASCRIPT实现在FORM表单中增加一个控件?
- ////////////////////////////////////////求此正则的最简写法???
- 大家帮忙看看这段代码有什么问题 谢谢!!
- 求一点击返回代码
- 一个关于Javascript传值的问题!?
- 急:创建节点trElement,调用trElement.onclick="alert("ok")"怎么无效?如何动态添加它?
- svg中js的问题。
- 关于图片横向滚动的问题
{
c=a%b
if(c==0)
break
a=b
b=c
}死机是因为这里c=a%b 之后不等于0 造成的死循环,并不是parseInt的问题. 解决的话,判断一下b!=0,再做除法
if(b==null||b==""||b==0)
{
alert("请输入数字b")
http://download.csdn.net/source/308916不懂就查查手册先好么L@_@K
function oncheck(){
var a=parseInt(document.all.login.A.value, 10);
var b=parseInt(document.all.login.B.value, 10);
if(isNaN(a))
{
alert("请输入数字a")
}
else if (isNaN(b) || b==0)
{
alert("请输入数字b")
}
else
{
document.all.login.resault.value = grdd(a,b)
}
}
也可以做出当a,b为字母字符串时跳出警报
if(a==null||a==""||parseInt(a)==NaN)
{
alert("请输入数字a")
}
我增加的这个parseInt(a)==NaN为什么不管用????
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function show() {
var temp = document.getElementById('test').value;
if (isNaN(temp)) {
alert("请输入数字!");
return false;
}
return true;
}
//-->
</SCRIPT>
</HEAD><BODY >
<input type="text" id="test" onBlur="show()">
</BODY>
</HTML>
用isNaN是否为数字
alert(parseInt("abc")==NaN); // false与 null 不同,NaN 之间是不等的,要用 isNaN() 来判断,记住这个就好了!建议系统地学习一下 js!
b=parseInt('0'+document.all.login.B.value, 10);当输入的是文字的话,转成的是0,然后没有NaN的情况
{
c=a%b
if(c==0)
break
a=b
b=c
}
这里c=a%b 如果有字母字符的话结果是NAN,如果含NAN的话结果为空,最后一直在NAN和结果为空那里折腾,不等于0,都跳不出循环,页面不死才怪