为什么我点击 触发事件但是div闪跳了一下,display属性有恢复成none document无法改变display属性啊!~ 5
<divclass="div01"id="div01"><divclass="div02"id="div02"><formid="form1"name="form1"me...
<div class="div01" id="div01">
<div class="div02" id="div02">
<form id="form1" name="form1" method="post" action="">
<input type="submit" name="b01" id="b01" value="001" onclick="changeDiv()"/>
<input type="submit" name="b02" id="b02" value="002" onclick="changeDiv()"/>
<input type="submit" name="b03" id="b03" value="003" onclick="changeDiv()"/>
<input type="submit" name="b04" id="b04" value="004" onclick="changeDiv()"/>
<input type="submit" name="b05" id="b05" value="005" onclick="changeDiv()"/>
</form>
</div>
<div class="div001" id="div001" style="display:block">此处显示新 001 标签的内容</div>
<div class="div002" id="div002" style="display:none">此处显示新 002 标签的内容</div>
<div class="div003" id="div003" style="display:none">此处显示新 003 标签的内容</div>
<div class="div004" id="div004" style="display:none">此处显示新 004 标签的内容</div>
<div class="div005" id="div005" style="display:none">此处显示新 005 标签的内容</div>
</div>
JS代码::::
function changeDiv()
{
obj = event.srcElement;
var divId = obj.value;
clearDiv();
divId = "div"+divId;
document.getElementById(divId).style.display = "block";
}
function clearDiv()
{
document.getElementById("div001").style.display = "none";
document.getElementById("div002").style.display = "none";
document.getElementById("div003").style.display = "none";
document.getElementById("div004").style.display = "none";
document.getElementById("div005").style.display = "none";
} 展开
<div class="div02" id="div02">
<form id="form1" name="form1" method="post" action="">
<input type="submit" name="b01" id="b01" value="001" onclick="changeDiv()"/>
<input type="submit" name="b02" id="b02" value="002" onclick="changeDiv()"/>
<input type="submit" name="b03" id="b03" value="003" onclick="changeDiv()"/>
<input type="submit" name="b04" id="b04" value="004" onclick="changeDiv()"/>
<input type="submit" name="b05" id="b05" value="005" onclick="changeDiv()"/>
</form>
</div>
<div class="div001" id="div001" style="display:block">此处显示新 001 标签的内容</div>
<div class="div002" id="div002" style="display:none">此处显示新 002 标签的内容</div>
<div class="div003" id="div003" style="display:none">此处显示新 003 标签的内容</div>
<div class="div004" id="div004" style="display:none">此处显示新 004 标签的内容</div>
<div class="div005" id="div005" style="display:none">此处显示新 005 标签的内容</div>
</div>
JS代码::::
function changeDiv()
{
obj = event.srcElement;
var divId = obj.value;
clearDiv();
divId = "div"+divId;
document.getElementById(divId).style.display = "block";
}
function clearDiv()
{
document.getElementById("div001").style.display = "none";
document.getElementById("div002").style.display = "none";
document.getElementById("div003").style.display = "none";
document.getElementById("div004").style.display = "none";
document.getElementById("div005").style.display = "none";
} 展开
2个回答
展开全部
楼上说错了,还是你仔细看看吧,input的id才是b01,楼主要操作的是下面那行字的display
是这样,由于你把所有的input放在了一个form里面,点击之后就会提交,因为action="",提交给了自身,导致页面刷新了。刷新后自然回到了初始div001的状态。
在form里面添加一个属性,onsubmit="return false;",就可以阻止提交
比如这样<form onsubmit="return false;" id="form1" name="form1" method="post" action="">
其实method和action完全不必写,只是不知道你还有没有用到它们的地方。
是这样,由于你把所有的input放在了一个form里面,点击之后就会提交,因为action="",提交给了自身,导致页面刷新了。刷新后自然回到了初始div001的状态。
在form里面添加一个属性,onsubmit="return false;",就可以阻止提交
比如这样<form onsubmit="return false;" id="form1" name="form1" method="post" action="">
其实method和action完全不必写,只是不知道你还有没有用到它们的地方。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询