2010-08-17 124 views
0

嘿家伙。我有一个测验脚本,它在不同的div中有问题,它们会一个接一个地出现,我希望当最后一个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> 

任何形式的帮助表示赞赏。

谢谢。

回答

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

那么我想你可以这样做:

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

此外,在开始的时候,你可以只用于循环做$('.questions').hide(),而不是。

1

$('div[id *= "question"]:last')将得到id为“question”的最后一个div。

编辑:

要显示的按钮,你可以这样做:

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