Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не срабатывает плагин сразу после AJAX запроса (https://javascript.ru/forum/jquery/47460-ne-srabatyvaet-plagin-srazu-posle-ajax-zaprosa.html)

Kikoma 25.05.2014 07:47

Не срабатывает плагин сразу после AJAX запроса
 
Здравствуйте, многоуважаемый All!

Проблема следующая:
1. Есть функция loadTable(), в которой с помощью JSON делается запрос на основе полученных данных формируется таблица. В одном из столбце таблицы есть input class="checkbox" type="checkbox" checked="checked"

=> все формируется нормально, никаких нареканий нет.

2. есть плагин, который этот checkbox превращает в более интересный вид. Запуск его находится в функции:
Код:

function SetCheckBox(){
        $('.checkbox').iphoneStyle();
}

Проблема: если я пишу в
Код:

$(document).ready(function(){               
        loadTable();
        SetCheckBox();
});

То checkbox не изменяется.
Если вешаю функцию SetCheckBox() на какую нить кнопку, то все работает.

Помогите с направлением пути решения :)

рони 25.05.2014 09:13

Цитата:

Сообщение от Kikoma
Есть функция loadTable(), в которой с помощью JSON делается запрос на основе полученных данных формируется таблица

так эта функция и должна после формирования таблицы запускать плагин.

Kikoma 25.05.2014 09:16

Вопрос снят.
Вызов функции SetCheckBox() надо помещать в функцию loadTable() после формирования таблицы.

Наверное в первом варианте функция loadTable() еще не сформировала таблицу, и поэтому плагин просто не находит чекбоксов.

Хотя я пробовал setTimeout(SetCheckBox(),5000); - извращение конечноже, но всеравно не работало.

Мож кто подскажет, а то не понимаю логику работы

рони 25.05.2014 09:34

Цитата:

Сообщение от Kikoma
Хотя я пробовал setTimeout(SetCheckBox(),5000);

скобки то зачем? но конечно это не выход.
loadTable нужно время -- ждёт ответа сервера -- в это время отработает весь остальной код


Часовой пояс GMT +3, время: 00:57.