Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.07.2015, 13:29
Аватар для ogurchik
Аспирант
Отправить личное сообщение для ogurchik Посмотреть профиль Найти все сообщения от ogurchik
 
Регистрация: 23.02.2015
Сообщений: 45

можно ли использовать вызов функции?
Нужно реализовать переключение между вкладками при помощи AJAX. Функцию решено было сделать на jquery, что бы мне как новичку было проще. Пока на бэкэнде ошибки и непонятно, будет ли работать, тем временем я думаю над тем, что не так у меня? Работает кажется некорректно, вызывает сразу после загрузки запрос со всеми тремя url. На клик же на вкладку не реагирует. Не хотелось бы повторением кода заниматься, можно же использовать jquery в функции и тут же вызвать по клику эту функцию?

<div class="picker">
        <div id='tab1'>Some data 1</div>
        <div id='tab2'>Some data 2</div>
        <div id='tab3'>Some data 3</div>
    </div>
   <div class='listing'>
   <div class='listing-item'>one</div>
   <div class='listing-item'>two</div>
   <div class='listing-item'>three</div>
</div>

var doRequest = function (url) {

        $('.listing').css('opacity', '0.1').before('<img src="/static/images/loader.svg" class="loader">');

        jQuery.getJSON(url).success(function(data) {
                console.log("Успешное выполнение");
                console.log(data);
        })
              .error(function() {
                console.log("Ошибка выполнения");
        })
              .complete(function() {
                $('.listing').css('opacity', '1');
                $('.loader').remove();
        });
    };

    $('#tab1').click(doRequest('/courses/tab/1'));
    $('#tab2').click(doRequest('/courses/tab/2'));
    $('#tab3').click(doRequest('/courses/tab/3'));
</script>

Последний раз редактировалось ogurchik, 20.07.2015 в 13:32.
Ответить с цитированием
  #2 (permalink)  
Старый 20.07.2015, 13:48
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

$('#tab1').click(function() {
  doRequest('/courses/tab/1');
});
$('#tab2').click(function() {
  doRequest('/courses/tab/2');
});
$('#tab3').click(function() {
  doRequest('/courses/tab/3');
});
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #3 (permalink)  
Старый 20.07.2015, 13:56
Аватар для ogurchik
Аспирант
Отправить личное сообщение для ogurchik Посмотреть профиль Найти все сообщения от ogurchik
 
Регистрация: 23.02.2015
Сообщений: 45

оу... понятно, спасибо )
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов функции из функции с параметрами cript Events/DOM/Window 13 18.01.2015 14:57
Повторный вызов функции TorchTT Общие вопросы Javascript 4 20.03.2014 21:20
Запретить вызов функции noak96 Общие вопросы Javascript 2 04.02.2014 20:10
Почему можно использовать id элемента без использования getElementById? grifangel Общие вопросы Javascript 3 08.01.2014 22:20
Вызов функции при отображении BrainFuck Events/DOM/Window 1 10.09.2013 10:41