检查div是否为最后一个并显示按钮

时间:2010-08-17 14:14:58

标签: jquery html fadein

嘿伙计们。我有一个测验脚本,在不同的div中有问题,它们一个接一个地出现,我希望当最后一个div消失时,它会显示提交按钮而不是下一个问题按钮。

这是我的js。

    $('#questions').ready(function(){

    for (i = 1; i < 100; i++) {
      if ($('#question' + i).length > 0) {
            $('#question' + i).hide();


  } else {
            break;
        }

  }



});


function transition(question_id) {

    $('#question' + question_id).fadeOut('fast',function() {
           question_id++;
        if ($('#question' + question_id).length > 0) {
           $('#question' + question_id).fadeIn('fast');

        } else {
            $('#test').submit();
  } return false;

    });

}

这是我的html:

<div class="questions"> 
        <div id="question0" class="question">
<span class="qutitle">asdg asdg</span> <br /> 

         <FIELDSET> 


               <br />   <input id="q_0" type="radio" name="q_0" value="0"> sdgas                       <br /> 



               <br />   <input id="q_0" type="radio" name="q_0" value="2">dgasdg                       <br /> 



               <br />   <input id="q_0" type="radio" name="q_0" value="1">dgas                       <br /> 

</FIELDSET><input type="button"  onclick="javascript: transition(0);" value="">
</div> 
        <div id="question1" class="question"><span class="qutitle">asdgasd</span> <br /> 

         <FIELDSET> 


               <br />   <input id="q_1" type="radio" name="q_1" value="0">gasdg                       <br /> 



               <br />   <input id="q_1" type="radio" name="q_1" value="2">asdgasdg                       <br /> 



               <br />   <input id="q_1" type="radio" name="q_1" value="1">sdgasdg                       <br /> 

</FIELDSET><input type="button"  onclick="javascript: transition(1);" value="">
</div> 
        <div id="question2" class="question"><span class="qutitle">sgasdgasd</span> <br /> 

         <FIELDSET> 


               <br />   <input id="q_2" type="radio" name="q_2" value="1">asdgsad                       <br /> 



               <br />   <input id="q_2" type="radio" name="q_2" value="2">gasdg                       <br /> 



               <br />   <input id="q_2" type="radio" name="q_2" value="0">gasdg                       <br /> 

</FIELDSET><input type="button"  onclick="javascript: transition(2);" value=""></div>

感谢任何形式的帮助。

谢谢。

2 个答案:

答案 0 :(得分:1)

questions = $('.question').length; // total number of questions

然后我猜你可以这样做:

if(questions-1 == question_id){
    //Show submit button & hide next button
}

此外,在开始时,您可以只执行$('.questions').hide(),而不是for循环。

答案 1 :(得分:1)

$('div[id *= "question"]:last')将在ID上获得带有“问题”的最后一个div。

编辑:

要显示按钮,您可以执行以下操作:

$('div[id *= "question"]:last').children('input[type == "button"]).fadeIn('fast')