
求JS高手指导下这段JS怎样能在谷歌内核的浏览器下运行 5
<scriptlanguage="javascript">functionheji(){vartemp;temp=0;for(i=1;i<=6;i++){obj1=doc...
<script language="javascript">
function heji()
{
var temp;
temp = 0;
for (i=1;i<=6;i++)
{
obj1 = document.getElementById('shulian'+i);
obj2 = document.getElementById('price'+i);
temp=temp+obj1.value*obj2.value;
}
document.all.heji.innerHTML = Math.round(temp*100)/100
}
</script>
html里的触发语句 onBlur="heji();
也就是说上面这段JS在IE浏览器下正常 谷歌内核下就不行 展开
function heji()
{
var temp;
temp = 0;
for (i=1;i<=6;i++)
{
obj1 = document.getElementById('shulian'+i);
obj2 = document.getElementById('price'+i);
temp=temp+obj1.value*obj2.value;
}
document.all.heji.innerHTML = Math.round(temp*100)/100
}
</script>
html里的触发语句 onBlur="heji();
也就是说上面这段JS在IE浏览器下正常 谷歌内核下就不行 展开
展开全部
很简单,将temp=temp+obj1.value*obj2.value;这行代码改为
temp=temp+parseInt(obj1.value)*parseInt(obj2.value);即可,如果获取的数字为小数,则可改为temp=temp+parseFloat(obj1.value)*parseFloat(obj2.value);
你写的这段代码其实在兼容性上是没有问题的,不过obj1.value和obj2.value需要数据类型的转换才行,不转换的话有的浏览器可以,不过如果想要所有浏览器都适用,那必须要严谨一点,多以需要明确的转换
temp=temp+parseInt(obj1.value)*parseInt(obj2.value);即可,如果获取的数字为小数,则可改为temp=temp+parseFloat(obj1.value)*parseFloat(obj2.value);
你写的这段代码其实在兼容性上是没有问题的,不过obj1.value和obj2.value需要数据类型的转换才行,不转换的话有的浏览器可以,不过如果想要所有浏览器都适用,那必须要严谨一点,多以需要明确的转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企...
点击进入详情页
本回答由Storm代理提供
展开全部
<script language="javascript">
function heji(that)
{
var temp;
temp = 0;
for (i=1;i<=6;i++)
{
obj1 = document.getElementById('shulian'+i);
obj2 = document.getElementById('price'+i);
temp=temp+obj1.value*obj2.value;
}
that.innerHTML = Math.round(temp*100)/100
}
</script>
替换一下代码,在吧html里的触发语句改成 onBlur="hejis(this)"
function heji(that)
{
var temp;
temp = 0;
for (i=1;i<=6;i++)
{
obj1 = document.getElementById('shulian'+i);
obj2 = document.getElementById('price'+i);
temp=temp+obj1.value*obj2.value;
}
that.innerHTML = Math.round(temp*100)/100
}
</script>
替换一下代码,在吧html里的触发语句改成 onBlur="hejis(this)"
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询