2010-08-17 36 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')