Как я могу загружать данные каждый раз, когда изменяется внутренний div html-страницы? - PullRequest
0 голосов
/ 15 ноября 2011

На моем веб-сайте я создал главную страницу, которая имеет 3 элемента div: header, footer и main. У заголовка div есть несколько кнопок, которые меняют основной div. Означает, что страница загружается только один раз, тогда я просто меняю основной div при нажатии какой-либо кнопки. Я просто помещаю HTML-страницу в основной div, когда нажимается какая-то кнопка.

Я добавил предупреждение в функцию $ (document) .ready на каждой странице. Всякий раз, когда основной div изменяется, эти предупреждения должны приходить, потому что main div - это HTML-страница. Но эти предупреждения не приходят. Почему это так. Я хочу загрузить некоторые данные каждый раз, когда основной div меняется. Как я могу это сделать? Заранее спасибо.

главная страница:

 <html>
   <head>
     <script type="text/javascript" src="jquery-1.7.js"></script>    
 <script language="javascript" type="text/javascript">
         $(document).ready(function() {
             $("#btn1").click(function(){
                 $("#main").load("page1.html");
             });

             $("#btn2").click(function(){
                 $("#main").load("page2.html");
             });
         });
     </script>
</head>

    <body>
    <div id="header"> --- </div>
            <div id="maincontent"><div id="main"> --- </div></div>
            <div id="footer"> --- </div>
    </body> 
 </html>

стр.1:

  <html>
   <head>
     <script type="text/javascript" src="jquery-1.7.js"></script>    
 <script language="javascript" type="text/javascript">
         $(document).ready(function() {
             // trying to load data. but its not working
         });
     </script>
</head>

    <body>
    <div id="page1-div"> --- </div>

    </body> 
 </html>

Ответы [ 2 ]

3 голосов
/ 15 ноября 2011

Вы просто вносите изменения в DOM, не загружая новый документ, который вызовет $ (document) .ready ();.

Исходя из тегов вопросов, я предполагаю, что вы загружаете контент, используя AJAX.В этом случае просто используйте обратные вызовы jQuery для функций $ .ajax *, чтобы выполнять любые действия при загрузке контента.

1 голос
/ 15 ноября 2011

Это похоже на то, что вам нужно.http://james.padolsey.com/javascript/monitoring-dom-properties/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...