关于javascript获得hidden值出现的问题

wangjiangbo2 2011-03-18 03:33:46
我做的一个页面,有公式计算,被计算的值是用innerHTML方法放到TD里,同时它的值要放到hidden域里。
我做的javascript方法放进去没有问题,在取值时报没有这个对象


alert(document.getElementById(gg_id+"3").value);//这个能取到hidden里的值

document.getElementById(gg_id+"3").value = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

document.getElementById(gg_id+"3t").innerHTML = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

alert(document.getElementById(gg_id+"3"));//得到的是一个null


为什么会出现这样的情况?怎么解决这个问题
...全文
119 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangjiangbo2 2011-03-18
  • 打赏
  • 举报
回复
修改好了
wangjiangbo2 2011-03-18
  • 打赏
  • 举报
回复
4楼说的对,hidden换成text然后把innerHTML去掉完全好用,加上innerHTML就会出这样问题
但是我不想用text显示被计算的值,再我上面的js里有什么方法可以实现?
kaifadi 2011-03-18
  • 打赏
  • 举报
回复
楼主用的浏览器是什么?IE还是FF或其他。有的浏览器对隐藏域有可能无法获取或设置或者获取方式不同!
wern0565 2011-03-18
  • 打赏
  • 举报
回复
document.getElementById(gg_id+"3t").innerHTML = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

上面这句代码,把你ID以“3t”结尾的td的内容重写了。 所以document.getElementById(gg_id+"3")就没有了。
wangjiangbo2 2011-03-18
  • 打赏
  • 举报
回复
function jsgs(obj){
var id = obj.name;
if(isNaN(document.getElementById(id).value)){
alert("内容必须为数字!");
document.getElementById(id).value=0;
document.getElementById(id).focus();
}
var num = id.substr(id.indexOf("c")+1,id.length);
var gg_id = id.substr(0,id.indexOf("c")+1);

if(num==5){
alert(document.getElementById(gg_id+"3").value);
document.getElementById(gg_id+"3").value = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

document.getElementById(gg_id+"3t").innerHTML = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);
alert(document.getElementById(gg_id+"3"));
}

<td class="STYLE2" bgcolor="#FFFFFF" id="r1c3t"><input type="hidden" name="r1c3" id="r1c3" value="0"/></td>



<td class="STYLE2" bgcolor="#FFFFFF"><input type="text" name="r1c4" id="r1c4" size="10" value="0" onblur="jsgs(this)"></td>



<td class="STYLE2" bgcolor="#FFFFFF"><input type="text" name="r1c5" id="r1c5" size="10" value="0" onblur="jsgs(this)"></td>


这个代码
hongmei85 2011-03-18
  • 打赏
  • 举报
回复
貌似正常
	<body>
<input type="hidden" id="kk3" value="3"/>
<input type="hidden" id="kk4" value="4"/>
<input type="hidden" id="kk5" value="5"/>
<div id="kk3t" style=""></div>
<script type="text/javascript">
<!--
var gg_id = "kk"
alert(document.getElementById(gg_id+"3").value);//这个能取到hidden里的值

document.getElementById(gg_id+"3").value = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

document.getElementById(gg_id+"3t").innerHTML = eval(document.getElementById(gg_id+"4").value)+eval(document.getElementById(gg_id+"5").value);

alert(document.getElementById(gg_id+"3"));//
alert(document.getElementById(gg_id+"3").value);//这个能取到hidden里的值

//-->
</script>
startdream 2011-03-18
  • 打赏
  • 举报
回复
这些JS所在的位置都一样吗?

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧