ďťż
Podstrony
|
telcocafeWitam,Mam następujący problem. Na stronie mam ładowany za pomocą ajax'a formularz i dodaje event aby za pomocą mootols'a obsłużyć wysyłanie formularza. Niestety post nie zawiera żadnych danych z zawartości formularza. Jeżeli usunę ajax'a i po prostu wykona się normalnie submit to post idzie prawidłowo. Nie wiem czy wyraziłem się jasno dlatego poniżej zamieszczam kod może komuś będzie łatwiej. new Request({ url: 'pobiezFormularz.php', method : 'post', onSuccess: function(txt){ oDivDoAktualizacji.innerHTML = txt; window.addEvent('domready', function() { $('form1').addEvent('submit', function(e) { e.stop(); var oInnyDiv = $('div_submit').empty(); this.set('send', { onComplete: function(response) { oInnyDiv.set('html', response); } }); this.send(); }); }) }, }).send(); Generalnie chce osiągnąć efekt jak w tym demie mootols'a: -> tutaj Różnica polega na tym że tam jest formularz na stronie a ja go chce pobrać ajax'em. Z góry dzięki za pomoc Masz Firefoksa? Zainstaluj Firebuga i sprawdź, czy wysyłane są dane oraz co jest zwracane. Aha, w kodzie masz błąd, choć może tylko powycinałeś zbędne elementy.new Request({ url: 'pobiezFormularz.php', method : 'post', onSuccess: function(txt){ oDivDoAktualizacji.innerHTML = txt; window.addEvent('domready', function() { $('form1').addEvent('submit', function(e) { e.stop(); var oInnyDiv = $('div_submit').empty(); this.set('send', { onComplete: function(response) { oInnyDiv.set('html', response); } }); this.send(); }); }) } }).send(); Użytkownik andrzej_aa edytował ten post 06 styczeń 2010, 17:35 FireBug widzi że post idzie ale wiadomość (tablica post) jest pusta. Poza tym jak w skrypcie(php) docelowym daje print_r($_POST) to również nie wyświetla wyników. Także jestem pewien że post jest pusty. Co do kodu to chodziło mi tylko o idee i rzeczywiście pousuwałem zbędny kod. Jeżeli usunę kod ajax odpowiedzialny za wysyłanie formularza to działa prawidłowo. window.addEvent('domready', function() { $('form1').addEvent('submit', function(e) { e.stop(); var oInnyDiv = $('div_submit').empty(); this.set('send', { onComplete: function(response) { oInnyDiv.set('html', response); } }); this.send(); }); }) Zastanawia mnie fakt że formularz jest doczytywany i może ograniczenia JS na to nie pozwalają aby w ten sposób wysyłać formularzy?? Raczej nie ograniczenia. Jeśli zakładka Wiadomość jest pusta, znaczy to, że elementy formularza nie są widoczne dla Mootools. Mógłbyś umieścić na serwerze próbkę tego, by można było to sprawdzić? No i po wyświetleniu formularza nie ma potrzeby tworzyć zdarzenia załadowania dokumentu.new Request({ url: 'pobiezFormularz.php', method : 'post', onSuccess: function(txt){ oDivDoAktualizacji.innerHTML = txt; $('form1').addEvent('submit', function(e) { e.stop(); var oInnyDiv = $('div_submit').empty(); this.set('send', { onComplete: function(response) { oInnyDiv.set('html', response); } }); this.send(); }); } }).send(); P.S. Pobierz, bo pobierać ;) |
|||
Sitedesign by AltusUmbrae. |