2016-01-20 3 views
0

Я пытаюсь загрузить файл php с помощью ajax.JQuery не работает после загрузки PHP ajax

Это прекрасно работает с помощью этого кода:

<body id="top">  
<div id="loadajaxhere"></div> 
<script> 
    var xmlhttp = new XMLHttpRequest(); 
    xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      document.getElementById("loadajaxhere").innerHTML = xmlhttp.responseText; 
     } 
    }; 
    xmlhttp.open("GET", "myfile.php", true); 
    xmlhttp.send(); 
</script> 

Но в моем файле РНР JQuery плагины, которые не работают после загрузки с помощью AJAX ... Может быть, решение заключается в использовании Ajax синтаксисом JQuery. Это правильно?

Я попробовал, но мой Ajax не загрузил php ... Он должен загрузить php automaticlly, загрузив страницу в определенном div.

Большое спасибо заранее!

+0

В чем заключается содержимое 'myfile.php'? – AnkiiG

+0

Есть ли функция вызова JQuery? Поместите этот код. Также проверьте свою консоль браузера на JS-ошибку, если таковая имеется. –

+0

Нет необходимости загружать javascript с помощью ajax. Просто добавьте его на текущую страницу, если необходимо, внутри некоторой логики. Например http://stackoverflow.com/questions/15521343/condition-load-javascript-file –

ответ

0
<script> 
     $.ajax({ 
       url: "myfile.php", 
       success: function(result){ 
        $("#loadajaxhere").html(result); 
       } 
     }); 
</script> 
+0

В порядке, это загрузка, но она возвращает другую, отличную от функции без jquery. –

+4

Пожалуйста, объясните свой ответ. В настоящее время он рассматривается как должность низкого качества. Благодаря! – Dropout

0

использование Jquery ajax вместо. например:

$.ajax({ 
     url: 'myfile.php', 
     type: 'GET', 
     data: {'submit':'true'}, // An object with the key 'submit' and value'true'; 
     success: function (result) { 
      document.getElementById("loadajaxhere").innerHTML = result; 
     } 
    }); 
+0

его загрузка, но сценарии jquery в моем файле содержимого не работают. –

0

Небольшая часть решаемая

небольшой скрипт в myfile.php теперь работает:

<script type="text/javascript"> 
//$('.triggermore').click(function(){ //<- This is the old line 
$('body').on('click', '.triggermore', function(event){ //<- This is the new one 
     $(".weitere").slideDown(); 
     $(".weitere").addClass("open"); 
     $(".triggermore").addClass("bye"); 
     $('html, body').animate({ scrollTop: $("#weitere").offset().top }, 1000);  
}); 
</script> 

Источник этого решения: JQuery effect doesnt work for ajax content

Но этот огромный сценарий не работает:

<script type="text/javascript"> 
$(document).ready(function() { 

    //http://webdesign.tutsplus.com/tutorials/javascript-tutorials/create-a-sticky-navigation-header-using-jquery-waypoints/ 
    var nav_container = $(".menu"); 
    var nav = $("nav"); 

    var top_spacing = 0; 
    var waypoint_offset = '40%'; 
    var first_section = '0%'; 

    nav_container.waypoint({ 
     handler: function(event, direction) { 

      if (direction == 'down') { 
       nav_container.addClass("sticky") 
       .stop() 
       .css("top", -nav.outerHeight()) 
       .animate({"top" : top_spacing}); 
      } else {  
       var inputPos = $('input:first').position(); 
       nav_container.stop().removeClass("sticky").css("top",first_section).animate({"top":first_section}); 
      } 

     }, 
     offset: function() { 
      return -nav.outerHeight()-waypoint_offset; 
     } 

    }); 

    var sections = $("section"); 
    var navigation_links = $(".menu li a"); 
    var links = $("nav a"); 

    sections.waypoint({ 
     handler: function(event, direction) { 

      var active_section; 
      active_section = $(this); 
      if (direction === "up") active_section = active_section.prev(); 

      var active_link = $('.menu li a[href="#' + active_section.attr("class") + '"]'); 
      navigation_links.removeClass("selected"); 
      if(active_section.attr("class") != "top") { 
       active_link.addClass("selected"); 
      } 

     }, 
     offset: waypoint_offset 
    }) 


    links.click(function(event) { 

     $.scrollTo(
      $(this).attr("href"), 
      { 
       duration: 1500, 
       offset: { 'left':0, 'top':0 } 
      } 
     ); 
    }); 




}); 

</script> 

** Сценарии JQuery находятся в моем index.php не в myfile.php. только html разметка a в myfile.php

0

Хорошо, я нашел ответ один.

Im с помощью этого:

$.ajax({ 
     url: 'myfile.php', 
     type: 'GET', 
     data: {'submit':'true'}, // An object with the key 'submit' and value'true'; 
     success: function (result) { 
      document.getElementById("loadajaxhere").innerHTML = result; 
     } 
    }); 

и вставляя мои скрипты в функции SucceS. Но не все работает. Я нахожусь на нем.

Смежные вопросы