2013-03-09 46 views
0

嗨我想使用JavaScript來使用一個函數說,如果日期是10/03/13然後輸出一個單一的數字,如1.Javascript輸出根據日期變化

我需要將其應用於jquery選項卡選項。

實施例: 13年9月3日在輸出活動選項的數字2

<script> 
    $(function() { 
    $("#tabs").tabs("option", "active", 2); 
    }); 
</script> 

13年10月3日輸出的數量3,使代碼看起來是這樣

<script> 
     $(function() { 
     $("#tabs").tabs("option", "active", 3); 
     }); 
    </script> 
+2

你的問題沒有意義。你是否想說要根據日期選擇特定的標籤? – 2013-03-09 14:44:16

+0

這取決於,你如何存儲你的'日期'變量?在JS'Date'對象中?或者在一個字符串? – 2013-03-09 14:45:18

+0

其一個標籤功能與數量根據日期變化。所以tomorw是第10我需要在功能中的數字2更改爲數字3:/我希望有道理 – mariovass 2013-03-09 14:52:43

回答

0

我我的意見採取後續行動,我認爲這是回答你的問題。

首先,您希望將您的日期範圍轉換爲某種類型的索引,然後您可以使用這些索引進行選項卡選擇。

<script> 
    $(function(data) { 
     var tabsList = [ 
      '03/09/2013', 
      '03/10/2013', 
      '03/11/2013', 
      '03/12/2013' 
     ]; 

     var tab = 0; 
     for (var d=0;d<tabsList.length;d++) { 
      if (tabsList[d]==data.Date) { 
       tab = d; 
       break; 
      } 
     } 

     $("#tabs").tabs("option", "active", tab); 
    }); 
</script> 

基本上,您應該爲每個要識別的日期範圍都有一個唯一的標籤索引。如果這聽起來太多了,那麼你對這個問題的解決方法可能會有點偏離,你可能想重新思考你解決問題的方式。

編輯:因爲你確實需要一個數組,所以我已經破解了一些暴力的代碼。數據是你傳遞給函數的任何東西,並且應該包含你當前的日期或者你希望函數認爲它的任何日期。

+0

這是有道理的!是否可以添加多個else語句?我的功能很糟糕。我需要每天更改日期,直到本月17日。 – mariovass 2013-03-09 15:09:51

+0

@mariovass阿斯博特!您可以根據需要添加儘可能多的if語句,儘管您可能會在這一點上查看其他類似於固定數組的東西。但是,舉個簡單的例子,是的,你可以繼續添加其他else語句 – 2013-03-09 15:16:26

+0

嗨大衛,謝謝你的幫助。我試過這個,但它沒有工作..任何想法? http://jsfiddle.net/mariovass/F47AV/ – mariovass 2013-03-09 15:29:15

0

如果你試圖說你想根據@David所說的日期選擇一個特定的選項卡。然後,您需要對日期數組進行排序並返回排序數組的索引。

var dates = [ 
    '2013-11-08 18:58:50', 
    '2013-11-09 17:49:42', 
    // and so on... 
]; 

dates.sort(); 

,或者您需要這樣的Sample for Nav

0
<script> 
$(function() { 
    var cDate = new Date(); 
    var cYear = cDate.getFullYear().toString().substring(2); 
    var cMonth = ((cDate.getMonth()+1)<10)? ("0"+(cDate.getMonth()+1) : (cDate.getMonth()+1); 
    var cDay = (cDate.getDate()<10)? ("0"+cDate.getDate()) : cDate.getDate(); 
    cDateString = cMonth+'/'+cDay+'/'+cYear; 
    var tabs = [ 
    "", // 0 
    "", // 1 
    "09/03/13", // 2 
    "10/03/13" // 3 
    ]; 
    var tab = 0; 
    for (var d=0;d<tabs.length;d++) { 
    if (tabs[d]==cDateString) { 
     tab = d; 
     break; 
    } 
    } 
    $("#tabs").tabs("option", "active", tab); 
}); 
</script>