Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с ajax(jquery) 
:(
    Опции темы
ursula16
Дата 17.9.2007, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 4.7.2007

Репутация: нет
Всего: нет



Доброе утро! Проблема заключается в следуещем: С главной страницы посредством ajax загружается скрипт getMenu.php и загружается в div с id='menu'. 
Код

function getMenu() { 
        $.ajax({
           type: 'POST',
           url: 'getMenu.php',
           success: function(data){
           document.getElementById('menu').innerHTML=data;
   }
 });
    }

В етом скрипте есть обьявление 
Код

<div id='click1'>Добавить раздел</div>

Так вот, обработчик click1 никак не хочет реагировать на нажатие smile 
Код

$(document).ready(function() { 
        $('#click1').click(function() { 
            $.blockUI(\"<h1><img src='i.gif' />Подождите...</h1>\"); 
            test(); 
        }); 
    }); 
  А если я просто для проверки добавляю <div id='click1'>test me</div> на главную страницу,то все работает. Обидно, что штатными средствами JS все работало, а вот с jquery какойто косяк...  smile Заранее спасибо.
PM MAIL   Вверх
ksnk
Дата 17.9.2007, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Ну, дык! Сначала устанавливается обработчик на несуществующий пока элемент "click1" ПОСредством
Код

 $(document).ready(function() { 
        $('#click1'). ...

а затем уже когда-то потом этот самый элемент создается?
Нужно переставить установку обработчика клика в правильное место, в функцию метода success, к примеру... Кстати, а почему бы в этой функции не пользоваться jQuery, раз уж и так она есть...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
ursula16
Дата 17.9.2007, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 4.7.2007

Репутация: нет
Всего: нет



Спасибо за ответ! Но все равно чето ниче не получается...  smile Пробовал  так  
Код

function getMenu() { 
        $.ajax({
           type: 'POST',
           url: 'getMenu.php',
           data: 'name=John&location=Boston',
           success: function(data){
           document.getElementById('menu').innerHTML=data;

           $(document).ready(function() { 
               $('#click1').click(function() { 
               $.blockUI(\"<h1><img src='i.gif' />Подождите...</h1>\"); 
               test(); 
        }); 
    });
   }
 });
    }
 - вобще страничка не пашет, по другому тоже чет не получается... smile  smile

Добавлено через 1 минуту и 28 секунд
Цитата

 Кстати, а почему бы в этой функции не пользоваться jQuery, раз уж и так она есть... 
 - еее не понял...  smile  Просто еще в js не силен пока что... smile 
PM MAIL   Вверх
ksnk
Дата 18.9.2007, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Ну, вообще-то следует понимать, что пишешь, а не заниматься шаманством...
- конструкция $(document).ready(...) установит обработчик, когда объект document будет полностью загружен. Документ УЖЕ загружен и функция никогда не вызовется
- констнукция document.getElementById('menu').innerHTML=data; , если обратить внимание на идеологию jQuery, в меру элегантно перепишется вот так
$('#menu').text(data), тоесть, если переписать код примерно  так, будет более иеологичнее, да и правильнее...
Код

success: function(data){
       $('#menu').text(data)
       $('#click1').click(function() { 
               $.blockUI(\"<h1><img src='i.gif' />Подождите...</h1>\"); 
               test(); 
       });
},... 




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0882 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.