Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   ionrangeslider не работает после ajax (https://javascript.ru/forum/dom-window/50046-ionrangeslider-ne-rabotaet-posle-ajax.html)

summerokk 09.09.2014 13:26

ionrangeslider не работает после ajax
 
я у себя на сайте поставил плагин ionrangeslider, он работает, но когда я пытаюсь сделать чтобы он работал после подгрузки через ajax то плагин перестает работать, помогите пожалуйста.

ksa 09.09.2014 13:28

Цитата:

Сообщение от summerokk
он работает, но когда я пытаюсь сделать чтобы он работал после подгрузки через ajax то плагин перестает работать

Как вариант, на новых элементах просто нет обработчиков...

summerokk 09.09.2014 13:35

<script  type="text/javascript">
                $( document ).ready(function() {
                    $("#range_4").ionRangeSlider({
                        type: "single",
                        step: 1,
                        postfix: " Кол-во",
                        from: '.$needReiz.',
                        hideMinMax: true,
                        hideFromTo: false
                    });
                });
            </script>


вот код, я просто его вызываю через ajax, но не работает

ksa 09.09.2014 13:38

Цитата:

Сообщение от summerokk
$( document ).ready(...);

Вот и ответ! :)
Вовремя "готовности" документа еще ничего не подгузилось...

summerokk 09.09.2014 13:44

почему? он же работает когда не через ajax

krasovsky 09.09.2014 14:01

Цитата:

Сообщение от summerokk
почему? он же работает когда не через ajax

Во первых где полный код?
Во вторых что ты подгружаешь через ajax - этот скрипт? Если да смотри в консоль - возможно ошибка
И в третьих - где полный код?

summerokk 09.09.2014 14:10

ну примерно вот так

var whoBetTO = setInterval(function() {

        $.ajax({
            url : 'pokerUserHandler/whobet.php',
            type: 'POST',
            data: {idGame : idGame},
            success: function (res) {
                if (res != 1) {
                    $('.whoBetTI').html(res);
                    clearInterval(whoBetTO);
                }
               
            }
        });

    }, 1000);


а в div я гружу

print('
            <script  type="text/javascript">
                $(function () {
                    $("#range_4").ionRangeSlider({
                        type: "single",
                        step: 1,
                        postfix: " Кол-во",
                        from: '.$needReiz.',
                        hideMinMax: true,
                        hideFromTo: false
                    });
                });
            </script>
     
            <div style="width: 70%; margin: auto; padding-top: 10px;">
                <input id="range_4" type="text" name="range_4" value="'.$needReiz.';'.$myFish.'" />
            </div>
        ');

ksa 09.09.2014 14:38

Цитата:

Сообщение от summerokk
он же работает когда не через ajax

Потому как элементы, к которым он применяется, в этом случае есть на странице.

summerokk 09.09.2014 15:14

а как это исправить можно?

ksa 09.09.2014 15:37

Цитата:

Сообщение от summerokk
а как это исправить можно?

Как вариант, вызывать тот метод после получения и обработки ответа...


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