问题描述
急求:用jquery循环div完成考试系统开始界面是第一题,点击按钮“下一题”就出现第二题请问$(":button").click(function()中的代码怎么完成<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><!--awwwb.com--><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><scripttype="text/javascript"src="js/jquery-1.5.1.min.js"></script><scripttype="text/javascript">$(document).ready(function(){$(":button").click(function(){//alert(1);$("div").each(function(){//alert(this);$(this).hide();//alert($(this).attr("display"));if(this.style.display="none"){alert($(this).attr("id"));$("div").show();//$("div#($("this")attr("id"))").show();//$("div#$(this).attr("id")").show();$(this).show();}});});});</script></head><body><h2align="center">Thisisatesting</h2><divid="1"style="display:block"><p>1.HTML指的是?</p><inputtype="radio"value="超文本标记语言(HyperTextMarkupLanguage)"name="1">超文本标记语言(HyperTextMarkupLanguage)<br><inputtype="radio"value="家庭工具标记语言(HomeToolMarkupLanguage)"name="1">家庭工具标记语言(HomeToolMarkupLanguage)<br></div><divid="2"style="display:none"><p>2.Web标准的制定者是?</p><inputtype="radio"value="微软(Microsoft)"name="1">超文本标记语言(HyperTextMarkupLanguage)<br><inputtype="radio"value="万维网联盟(W3C)"name="1"/>家庭工具标记语言(HomeToolMarkupLanguage)<br></div><divid="3"style="display:none"><p>3.在下列的HTML中,哪个是最大的标题?</p><inputtype="radio"value="<H6>"name="1">超文本标记语言(HyperTextMarkupLanguage)<br><inputtype="radio"value="<H1>"name="1">家庭工具标记语言(HomeToolMarkupLanguage)<br></div><divid="4"style="display:none"><p>4.在下列的HTML中,哪个可以插入折行?</p><inputtype="radio"value="<br>"name="1">超文本标记语言(HyperTextMarkupLanguage)<br><inputtype="radio"value="<break>"name="1">家庭工具标记语言(HomeToolMarkupLanguage)<br></div><buttontype="button">下一题</button></body><!--awwwb.com--></html>
解决方案
解决方案二:
$(document).ready(function(){varshowIndex=1,divs=$("body>div");$(":button").click(function(){if(showIndex<divs.Length){divs.eq(showIndex).hide();//隐藏当前showIndex+=1;divs.eq(showIndex).show();//显示下一个});});});
解决方案三:
});多写了);或者保留上面的计数$(":button").click(function(){divs.each(function(i){i==(showIndex)?$(this).show():$(this).hide();});if(showIndex<divs.Length)showIndex+=1;});
解决方案四:
$(function(){$("button").click(function(){varcount=$("div").length;vari=1;$("div").eq(i).show();$("div").eq(i).siblings().hide();i<count?i++:0;});});
解决方案五:
$(document).ready(function(){$(":button").click(function(){varid=0;$("div").each(function(index,item){if($(this).attr("style").indexOf("block")>0){$(this).attr("style","display:none");id=parseInt($(this).attr("id"));}elseif(id!=0){$("#"+(id+1)).attr("style","display:block");id=0;}});});});
把你script标签里的方法替换掉,我刚写的,测试没问题,
解决方案六:
楼上的方法可用,不过你的html需要吧<inputtype="radio"value="<br>"name="1">中的name改下名,否则整个页面就只选中了一个值把你script标签里的方法替换掉,我刚写的,测试没问题//jquery实现选择问卷作者:季雨林$(document).ready(function(){$(":button").click(function(){$("div[style='display:block']").attr({style:"display:none"}).next("div[style='display:none']").attr({style:"display:block"});;});});
解决方案七:
补充下:'display:none'不能写成'display:none'(none前有空格)