Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

reload date dintr-un popUP
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> HTML/JavaScript/CSS
Subiectul anterior :: Subiectul următor  
Autor Mesaj
ApologetX



Data înscrierii: 16/Oct/2005
Mesaje: 261
Locație: Timisoara

Trimis: Vin Ian 25, 2008 9:25 pm    Titlul subiectului: reload date dintr-un popUP  

am un popUP unde am 2 liste (cladiri / etaje) ,odata selectate cladirea si etajul , dupa ce apesi buton "Selectare" trebe sa se salveze (in baza de date ,ceea ce e facut deja..) si bineinteles in pagina (unde este afisat.. )

Problema mea e urmatoarea..
In momentul in care apas butonul "selectare" vreau sa se actualizeze doar <div id="etaje_cladiri"> (vezi poza: http://www.aomegalleida.org/a/ ) "poza 2".

ceea ce am incercat eu:
actualizar("etaje_cladiri" , "actionul_care_introduce_datele_in_db" , window.opener.document.form[0]); ,nu merge ,se actualizeaza doar popUP-ul.. iar eu as vrea doar acel div.(poza 2) ,ptr ca odata actualizat ,va afisa cladirea si etajul selectat.

daca folosesc functia reload ,se actualizeaza toata pagina..ceea ce nu vreau...
Aveti vreo idee care sa ma ajute? daca se poate si cu putin cod..
Sus  
kleampa



Data înscrierii: 10/Iul/2005
Mesaje: 2128
Locație: Bucuresti

Trimis: Vin Ian 25, 2008 10:11 pm    Titlul subiectului:  

innerHTML face ce vrei tu
si anume sa scrie doar intr-un anumit div
dar ca sa scrii acolo, trebuie intai sa faci rost de informatii , iar in cazul tau se face cu ajax
http://emil.topweb.ro/ajax2select/ vezi
Sus  
ApologetX



Data înscrierii: 16/Oct/2005
Mesaje: 261
Locație: Timisoara

Trimis: Sâm Ian 26, 2008 1:07 am    Titlul subiectului:  

kleampa, nu vreau sa il scrie in acel div ,eu vreau doar sa actualizeze acel div pt ca actualizand div-ul va afiza cladirea si etajul..
daca esti atent aici: exemplu doar (ptr ca asta nu merge)
Citat:
actualizar("etaje_cladiri" , "actionul_care_introduce_datele_in_db" , window.opener.document.form[0]);


"etaje_cladiri" e div-ul (care trebe sa-l actualizele)
"actionul_care_introduce_datele_in_db" e un action: de ex: upDate.action, care introduce datele(cladiri, etaje) in DB. (tehnologia care o utilizez aici este Java + Struts 2 & JS iar db. oracle)

Deci dupa ce sa introdus datele ,face un reload la div-ul respectiv si gata ar trebui sa le afiseze. Daca folosesc functia reload (refresh la toata pagina) merge insa nu arata bine, eu vreau un reload doar la partea aia mica (cladiri , etaje) care l-am pus intr-un div... si care cred eu ca se poate face cu JS, dar nu stiu exact cum..
Sus  
dechim



Data înscrierii: 10/Mai/2005
Mesaje: 659
Locație: Drobeta Turnu Severin

Trimis: Sâm Ian 26, 2008 3:44 am    Titlul subiectului:  

Citat: (tehnologia care o utilizez aici este Java + Struts 2 & JS iar db. oracle)
Framework-ul Apache Struts 2 are nevoie de Servlet API, JSP API si Java, nu de PHP ce facem noi aici.
Comun ne este JS.
Asa cum ti-a spus kleampa te folosesti de innerHTML dupa ce ai obtinut informatiile folosind AJAX.
Daca nu faci reload la toata pagina dar reusesti sa actualizezi baza Oracle inseamna ca folosesti AJAX.
Citeste aici cum folosesti HTTPRequest pentru a primi date de la server.
Sus  
ApologetX



Data înscrierii: 16/Oct/2005
Mesaje: 261
Locație: Timisoara

Trimis: Lun Ian 28, 2008 10:31 am    Titlul subiectului:  

dechim, stiu ca PHP e ceea ce se preda cel mai mult aici ...dar eu v-am cerut ajutorul doar in JS ..si cred ca am incadrat bine subiectul.

Citat:
Daca nu faci reload la toata pagina dar reusesti sa actualizezi baza Oracle inseamna ca folosesti AJAX


se poate si cu Ajax dar eu am mai facut asta folosind Struts 2 si JS. Ziceam ca am mai facut ,ptr ca ,l-am facut in alt loc unde nu era cu popUP si am facut asa:
exemplu:
Citat:
<@s.select name="cod_edificiu" class="select4" list="llistaEdificiu"
listKey="codEdificiu" listValue="nomEdificiu" headerKey="0" headerValue="Toate" cssClass="texto" style="width: 100%" disabled="false" onchange="javascript:incarca_etajele();" />
</td>
<td align="right"><span class="opcions1">Etaje:</span></td>
<td align="left">
<div id="comboEtaje">
<@s.select name="etaje" class="select4" list="llistaEtaje"
listKey="id.etaje" listValue="id.etaje" headerKey="0" cssClass="text" style="width: 100%" disabled="false" />
</div>


in acel JS de la "incarca_etajele" printre altele se afla acel "actualizar" de combo si action (..) amintit mai sus..
Selectand o cladire ,se incarca automat etajele care apartin acelei cladiri..

De data asta am de facut aproape acceasi treaba dar dintr-un popUP si nu merge.. E o treaba simpla din JS ptr a actualiza un "div" (ptr cine sie JS).

ps: reamintesc: daca as folosi aceasta:
window.opener.location.reload(); >> se actualizeaza toata pagina (dar functioneaza corect!) iar eu vreau doar o actualizare la acel div.

sper ca am fost inteles


[/b][/quote]
Sus  
kleampa



Data înscrierii: 10/Iul/2005
Mesaje: 2128
Locație: Bucuresti

Trimis: Lun Ian 28, 2008 10:51 am    Titlul subiectului:  

ti-am raspuns ca acel div se actualizeaza doar cu innerHTML sau cu DOM (si anume sa stergi acel div si sa-l recreezi cu noul continut)

acel continut (etajele) daca sunt stocate in ceva extern (fisier txt , baza de date) trebuie extras cu ceva server side (php...) si apoi afisate cu js => deci ajax

daca le ai deja intr-o functie js , e javascript pur dar tot trebuie sa folosesti innerHTML sau DOM ca sa le afisezi

deci tu trebuie sa intelegi ca adaugare/stergere continut fara refresh se face doar aceste 2 functii javascript
Sus  
ApologetX



Data înscrierii: 16/Oct/2005
Mesaje: 261
Locație: Timisoara

Trimis: Lun Ian 28, 2008 1:08 pm    Titlul subiectului:  

am rezolvat problema..
poate nu am explicat foarte bine problema mea.. (e prima data cand ma lovesc de treaba asta, is si eu incepator in tehnologia asta..)

ceea ce aveam nevoie era:
opener.actualizar('comboEtaje', 'upDate.action', opener.document.forms[0]);
window.close();

cu ajutorul lui "opener" ,din popup actualizeaza div-ul din pagina principala (ptr ca si popup-ul e o pagina ,eu nu stiam sa utilizez acest "opener" si mi se actuliza pop-ul si nu ceea ce vroiam eu.

apoi am creat o pagina separat numita divComboEtaje.ftl si am pus doar continutul div-ului, ............

tks 4 all
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> HTML/JavaScript/CSS
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community