Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

[jQuery] .post funkcija mi vraca kompletan sadrzaj forme?!

  • 2 odgovora
  • 2.601 pregleda

Najnovija ↓

[jQuery] .post funkcija mi vraca kompletan sadrzaj forme?! 06.03.2010. u 16:55 · pre 202 meseca
izmenjeno 1 put, poslednji put johnnyc 06.03.2010. u 17:07
  1. johnnyc06.03.2010. u 17:07zapis iz teksta poruke
#1
Ova bi tema mozda mogla i u PHP sekciju, ali hajde da je za pocetak postavimo ovde...

Imam web formu, i na njoj dva option-select polja. Sve radim koristeci Ajax i CakePHP, i tutorijal koji mozemo naci na sledecem linku:


http://bakery.cakephp.org/articles/view/dynamic-select-boxes-with-ajax-jquery


Ono sto zelim da napravim je da kada se selektuje odredjeno polje u prvom selectu, da se izlistaju pripadajuca polja u drugom select boxu.

Velik problem mi pravi ono sto se desava kada selektujem neku vrednost u prvom select polju...


Naime, na Insert funkciji (add.ctp), sve je okej, i sve radi kako treba.

Ali, kada radim Edit, vraca mi se kompletan HTML sadrzaj moje forme, bukvalno od pocetka fajla edit.ctp, pa sve do kraja.


Dakle jQuery funkcija:


Code:
$("#BookCategory").bind('change', function() {
    $.post('/books/listTitleByCategory/' + $(this).val(), function(data) {
        $("#BookTitle").empty().append(data);
    }, 'html');
}); 



... odnosno varijabla data, vrati kompletan sadrzaj edit.ctp fajla, odnosno HTML koji on generise.

Sve ovo o cemu pricam, desava se kada promenim seletovano polje u prvom select boxu. I to samo na strani kroz koju radim insert novog recorda.

Sta bi moglo da bude problem, i da li mozete da mi kazete gde gresim?




VELIKO hvala unapred!!!
Re: [jQuery] .post funkcija mi vraca kompletan sadrzaj forme?! 06.03.2010. u 21:43 · pre 202 meseca #2
Citat:
johnnyc: ... odnosno varijabla data, vrati kompletan sadrzaj edit.ctp fajla, odnosno HTML koji on generise.

Nisam nikad koristion CakePHP, ali praveći neku paralelu sa framework-ovima u kojima sam radio, kad šalješ XmlHttp (AJAX) zahtev na neki kontroler, obavezno treba da disable-uješ renderovanje layout-a/view-a, kako bi output bio samo ono što ćeš da echo-uješ u toj nekoj akciji koju "gađaš" AJAX request-om. To disable-ovanje u Cake-u bi trebalo da radi ova linija koda: $this->autoRender = false;.
Re: [jQuery] .post funkcija mi vraca kompletan sadrzaj forme?! 06.03.2010. u 23:46 · pre 202 meseca #3
Pronasao sam gde je bio problem, nije do jQueryja, vec do mene...

Naime, kada radim insert, onda je path do controller fajla (deo vezan za Cake) kao sto je naveden ovde u drugoj liniji:
Code:

$("#BookCategory").bind('change', function() {
    $.post('listTitleByCategory/' + $(this).val(), function(data) {
        $("#BookTitle").empty().append(data);
    }, 'html');
}); 




Ali kada radim update, onda je path sadrzan u sledecem:
Code:

$("#BookCategory").bind('change', function() {
    $.post('/myapp/books/listTitleByCategory/' + $(this).val(), function(data) {
        $("#BookTitle").empty().append(data);
    }, 'html');
});


Druga varijanta moze naravno da se koristi i za insert.


Hvala u svakom slucaju.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme