Вывод Javascript Переменная по дате

Привет, я пытаюсь использовать javascript для использования функции, которая говорит, что если дата 03.10.13, то выведите одно число, например 1.

мне нужно применить это к опции вкладок jquery.

Пример: 03.09.13 вывести цифру 2 в активной опции

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

03.10.13 выведите число 3, чтобы код выглядел так

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

person mariovass    schedule 09.03.2013    source источник
comment
Ваш вопрос не имеет особого смысла. Вы пытаетесь сказать, что хотите выбрать конкретную вкладку на основе даты?   -  person David L    schedule 09.03.2013
comment
Это зависит от того, как вы храните свою переменную date? В объекте JS Date? Или в цепочке?   -  person Tom Walters    schedule 09.03.2013
comment
его одна функция вкладок с изменением числа в зависимости от даты. так что завтра 10-е, мне нужно, чтобы номер 2 в функции изменился на номер 3: / я надеюсь, что это имеет смысл   -  person mariovass    schedule 09.03.2013


Ответы (2)


Я продолжаю свой комментарий тем, что я считаю ответом на ваш вопрос.

Во-первых, вы хотели бы преобразовать свои диапазоны дат в какой-то индекс, который затем можно было бы использовать для выбора вкладок.

<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>

По сути, у вас должен быть уникальный индекс вкладок для каждого диапазона дат, который вы хотите распознать. Если это звучит слишком много, то ваш подход к проблеме, вероятно, немного неверен, и вы, возможно, захотите переосмыслить то, как вы решаете проблему.

РЕДАКТИРОВАТЬ: я каннибализировал часть насильственного кода, так как вам действительно нужен массив. Данные — это то, что вы передаете в функцию, и они должны содержать вашу текущую дату или любую дату, которую вы хотите, чтобы функция считала.

person David L    schedule 09.03.2013
comment
это имеет смысл! можно ли добавить несколько операторов else? Я довольно плохо разбираюсь в функциях. Мне нужно менять дату с числом вверх каждый день до 17 числа этого месяца. - person mariovass; 09.03.2013
comment
@mariovass Абсолютно! Вы можете добавить столько операторов if, сколько хотите, хотя в этот момент вы можете посмотреть на что-то еще, например на фиксированный массив. Но для простого примера да, вы можете продолжать добавлять дополнительные операторы else if - person David L; 09.03.2013
comment
Привет Дэвид, спасибо за всю вашу помощь. Я пробовал это, но это не работает .. Есть идеи? jsfiddle.net/mariovass/F47AV - person mariovass; 09.03.2013
comment
@mariovass Я обновил код, включив в него некоторые ответы Crayon Violent о массиве. Если у вас так много уникальных дат, вы должны перебирать свой массив. - person David L; 09.03.2013

Если вы пытаетесь сказать, что хотите выбрать конкретную вкладку на основе даты, как сказал @David. Затем вам нужно отсортировать массив дат и вернуть индекс отсортированного массива.

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

dates.sort();

Или вам нужно что-то вроде этого Sample for Nav

person Umair Saleem    schedule 09.03.2013