在JSP页面用JS控制某个表单的显示与隐藏,但只在IE9下有效,火狐和chrome都无效,求指导 本帖最后由 kingjmg 于 2013-11-08 18:46:51 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 第一个问题:var tp = document.getElementsByName(val);你在onlick时间绑定的是id属性,为啥要用这个方法?改为var tp = document.getElementsById(val);你可以改成这样function show(val){ var tp = document.getElementsById(val); if(tp.style.display == "block"){ tp.style.display = "none"; }else{ tp.style.display = "block"; }}因为要是改成获取id的话,它之后获取文档的第一个id,所以文档的id要唯一。另外,getElementsByName这个属性,支持度不好,不要常用啊至于其他的,慢慢来吧。 <script type="text/javascript">var tpt=false;function show(val){var tp = document.getElementsByName(val);if(!tpt){for(var i=0;i<tp.length;i++){tp[i].style.display="";}tpt=true;return ;}if(tpt){for(var i=0;i<tp.length;i++){tp[i].style.display="none";} tpt=false;return;}}</script></head><body><form action="" name="a1"><table id="t1"><tr><td><input type="button" value="点击显示1" onclick="show('tr1')"> </td></tr><tr name="tr1" style="display: none;"><td>tr1</td><td>tr1</td><td><input type="button" value="confirm"> </td></tr><tr name="tr1" style="display: none;"><td>tr1</td><td>tr1</td><td><input type="button" value="confirm"> </td></tr><tr name="tr1" style="display: none;"><td>tr1</td><td>tr1</td><td><input type="button" value="confirm"> </td></tr></table></form><form action="" name="a2"><table id="t2"><tr><td><input type="button" value="点击显示2" onclick="show('tr2')"> </td></tr><tr name="tr2" style="display: none;"><td>tr2</td><td>tr2</td><td><input type="button" value="confirm"> </td></tr><tr name="tr2" style="display: none;"><td>tr2</td><td>tr2</td><td><input type="button" value="confirm"> </td></tr><tr name="tr2" style="display: none;"><td>tr2</td><td>tr2</td><td><input type="button" value="confirm"> </td></tr></table></form>看不下去了,帮你改了一下,试试。document.getElementsByName(val); 另外这一句没有兼容性问题。 <span style="color: #FF0000;"> </span>这一段代码去掉,我本来是像给你加个颜色提醒的,CSDN抽筋了,你懂得、、、 onclick事件不触发的问题 !!!求一个图片轮显的js代码!! 刚才这个在IE下行 在FF下不行 【求助】Javascript合并单元格效率过低,removeChild, js里如何获得父节点tr在table中是第几行,情况如下 请教一个模式对话框的问题 js调用asp文件,该怎么写这个asp文件?在线等 怎么样屏蔽掉Ctrl+P 键 关于取的子窗口的值。 easyui的linkbutton的diasble问题 onclick 为什么调用 jquery function 有关JQuery插入层层,请大佬指点.
var tp = document.getElementsByName(val);
你在onlick时间绑定的是id属性,为啥要用这个方法?改为
var tp = document.getElementsById(val);你可以改成这样
function show(val){
var tp = document.getElementsById(val);
if(tp.style.display == "block"){
tp.style.display = "none";
}else{
tp.style.display = "block";
}
}因为要是改成获取id的话,它之后获取文档的第一个id,所以文档的id要唯一。另外,getElementsByName这个属性,支持度不好,不要常用啊
至于其他的,慢慢来吧。
var tpt=false;
function show(val){var tp = document.getElementsByName(val);if(!tpt){
for(var i=0;i<tp.length;i++){tp[i].style.display="";
}
tpt=true;
return ;
}
if(tpt){
for(var i=0;i<tp.length;i++){
tp[i].style.display="none";
}
tpt=false;
return;
}
}</script>
</head>
<body>
<form action="" name="a1">
<table id="t1">
<tr>
<td><input type="button" value="点击显示1" onclick="show('tr1')"> </td>
</tr>
<tr name="tr1" style="display: none;">
<td>tr1</td>
<td>tr1</td>
<td><input type="button" value="confirm"> </td>
</tr>
<tr name="tr1" style="display: none;">
<td>tr1</td>
<td>tr1</td>
<td><input type="button" value="confirm"> </td>
</tr>
<tr name="tr1" style="display: none;">
<td>tr1</td>
<td>tr1</td>
<td><input type="button" value="confirm"> </td>
</tr>
</table>
</form>
<form action="" name="a2">
<table id="t2">
<tr>
<td><input type="button" value="点击显示2" onclick="show('tr2')"> </td>
</tr><tr name="tr2" style="display: none;">
<td>tr2</td>
<td>tr2</td>
<td><input type="button" value="confirm"> </td>
</tr>
<tr name="tr2" style="display: none;">
<td>tr2</td>
<td>tr2</td>
<td><input type="button" value="confirm"> </td>
</tr>
<tr name="tr2" style="display: none;">
<td>tr2</td>
<td>tr2</td>
<td><input type="button" value="confirm"> </td>
</tr>
</table>
</form>
看不下去了,帮你改了一下,试试。document.getElementsByName(val); 另外这一句没有兼容性问题。