2013-03-29 72 views
0

我今天有一個邏輯問題。我有一個基於.load的表單,它工作得很好。我有點卡住的是根據加載的表單區域的位置加載標題。 我的「下一步」按鈕正常工作,因爲我對每個加載的區域都進行了驗證。例如javascript jquery驗證邏輯

$('#next').click(function() 
{ 
    if(question_pos==0) 
    { 
     question_pos+=1; 
     $("#title_area").load("bl_forms.jsp #area_title1"); 
     showContent(question_pos,"right"); 
     return true; 
    } 
}); 

現在我需要的是後退按鈕來加載基於位置的權利標題。 這是我的後退按鈕,

$('#back').click(function() 
{ 
    if(question_pos>=2 && question_pos<=25) 
    { 
     question_pos-=1; 
     showContent(question_pos,"left"); 
     return true; 
    } 
}); 

我需要標題1從區域POS 1-2,標題2區從POS 4-6,等被加載從區域POS 3-7,標題4。我所需要的只是一個如何在標題加載中添加回功能的例子。 在混亂的情況下arizes的

if(question_pos>=2 && question_pos<=25) 
{ 

有隻是爲了防止後退按鈕從POS 2前後AFER POS 25

/*New edit*/ 

什麼有關將回調改變POS?像

$('#back').click(function(){ 
     if(question_pos>=2 && question_pos<=2){ 
     question_pos-=1; 
     showContent(question_pos,"left"); 
        ('#back').callback(function(){ 
    if(question_pos<=1 && question_pos>=2){ 
    $("#title_area").load("bl_forms.jsp #area_title1"); 
}else if (question_pos<=3 && question_pos>=7){ 
    $("#title_area").load("bl_forms.jsp #area_title2"); 
}else if (question_pos<=8 && question_pos>=10){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
}else if (question_pos<=11 && question_pos>=12){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
}else if (question_pos==13 || question_pos<=16){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
}else if (question_pos==17 || question_pos<=19){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
}else if (question_pos==20 || question_pos<=21){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
}else if (question_pos==22 || question_pos<=25){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
} 

      } 
}); 

也許一些,可以讓一堆額外的if語句,或somethins,允許

+0

編輯更有意義。 – user2089255

+0

另一個編輯,也許回調添加更多的if語句。 – user2089255

回答

0
if(question_pos==1 || question_pos==2){ 
    $("#title_area").load("bl_forms.jsp #area_title1"); 
}else if (question_pos==3 || question_pos==7){ 
    $("#title_area").load("bl_forms.jsp #area_title2"); 
}else if (question_pos==4 || question_pos==6){ 
    $("#title_area").load("bl_forms.jsp #area_title4"); 
} 
+0

週一我回去工作時,這是生病的事情,謝謝你的回答。 – user2089255

0

你可以嘗試這樣的事情:

var areas = [ 
    { start: 1, end: 2, page: '#area_title1' }, 
    { start: 3, end: 7, page: '#area_title2' }, 
    { start: 4, end: 6, page: '#area_title4' } 
    // and so on... 
]; 

for (var i = 0, l = areas.length; i < l; i++) { 
    var area = areas[i]; 
    if (question_post >= area.start || question_post <= area.end) { 
     $('#title_area').load('bl_forms.jsp ' + area.page); 
     break; 
    } 
} 

這樣,你必須只更新你的頁面數組,而循環不會改變。

+0

這看起來像我在找什麼,生病星期一試試這個。 – user2089255