Jump to content
php.lv forumi

pop-up submit, parent refresh


Recommended Posts

Posted

Man ir galvenais logs, kurā ir forma. Šajā logā ir arī poga "XXX". Uz šīs pogas nospiežot, atveras pop-up lodziņš, t.i., notiek window.open ('adrese','nosaukums','izmēri').

 

Jaunajā logā arī ir forma, kurā ir poga "Pievienot".

Nospiežot šo pogu jaunā loga forma submitojas.

 

Kā izdarīt,

1> lai pēc formas jaunā logā submitošanas, mēs novalidējam visus tā laukus un tad aizveram šo pop-up logu

2> pēc tam, kad aizvērts pop-up, nepieciešams refrešot galveno logu

3> bet galvenā loga refrešam jābūt tādam, lai viss kas tur jau ir ierakstīts nepazustu!

 

R.

Posted
3> bet galvenā loga refrešam jābūt tādam, lai viss kas tur jau ir ierakstīts nepazustu!

To buus gruuti nogaranteet, jo vai ieraksti paliks vai nee ir atkariigs no brauzera, un pat no taa versijas..

normalaa situacijaa visam formam buutu janoresetojas, vienigais stabilais risinajums ir nosuutiit uz serveri Abas formas, un peec tam galvenaa loga ierakstus ar PHP sabakstiit atpakalj...

---

galvenais logs buus PARENT. document. ... darbojies tapat kaa no galvena loga, ats ir. standarta JS tikai prieksa parent.

Posted
Ja par popup logiem, tad window.opener.

Mazliet nojaucu no iFreima :(

Nebiju vel iisti pamodies ..

--

bet vispar labak censties neizmantot PopUpus... var sanakt ka Useris vinju vienkarshi neredzees ==> tiks noblokjets...

--

pats pedejaa laikaa izmantoju DIV kursh atveras centra , pari visam parejam ..

Posted (edited)

Refrešs, kas nepazaudē datus ir neuniversāls risinājums un jāskatās no konkrētās situācijas. Pirmie risinājumi, kas man uzreiz iešaujas galvā, ir viens par otru vājprātīgāki - varbūt kāds ko labāku tev ieteiks.

 

1) raugi, lai visi lapas ievades lauki būtu formā un tā vietā, lai refrešotu lapu, submito formu. Vari kaut kādu slēpto lauku uzsetot, lai norādītu, ka negribi ievadītās vērtības saglabāt, bet tikai attēlot formas laukos.

2) ja vairāk par vienu formu, tad var darīt kaut ko tādu

* ar javascript savāc visu lauku ievades vērtības

* savāktās vērtības serializē un ievieto slēptā formā

* submito šo slēpto formu

* pēc pārlādes vai nu

a) PHP ievieto atbilstošās vērtības atbilstošajos laukos

b) pēc dokumenta ielādes javascript atserializē vērtības un ievieto tās atbilstošajos laukos

 

Ja godīgi, es izvairītos no abiem risinājumiem, jo man neviens no viņiem nepatīk.

 

Upd. Klau, es te tā padomāju - a kāda jēga no refreša, kas saglabā visus formas laukus? Ja pēc refreša lapa izskatās tāda pati, tad kur ir pēc tā vajadzība?

Edited by Kaitnieks
Posted
Upd. Klau, es te tā padomāju - a kāda jēga no refreša, kas saglabā visus formas laukus? Ja pēc refreša lapa izskatās tāda pati, tad kur ir pēc tā vajadzība?

Visticamak ka nak klat kaads lauks, vai arii paraadas kaads papildus teksts, atkariiba kas tika ievadiits PopPup formaa..

Bet sadaa gadiijumaa labs paliigs ir AJAX & innerHtml ...

// ja nak klat kaads lauks tad var vienkarshi ar JS vinju paraadiit OR noslept ...

tas ir . radamos laukus izvadiit uzreiz un tad peec vajadziibas atraadit ...

Posted

Man ir selects galvenajā formā, bet pop-up forma pievienot datu bāzē jaunu ierakstu, kuram būtu jāparādās selectā.

Ar AJAX es "nedraudzējos", gribas kadu vienkāršāku risinājumu.

Posted

Tici man, ajax nebūt nav tā sarežģītākā lieta, bet viena no cilvēkiem patīkamākajām gan ;)

 

Ņem, piemēram, jQuery palīgā un nevaru iedomāties, kur tev varētu rasties problēmas.

Posted
Man ir selects galvenajā formā, bet pop-up forma pievienot datu bāzē jaunu ierakstu, kuram būtu jāparādās selectā.

 

Šajā gadījumā var iztikt bez visiem Ajaxiem un refrešošanām. Apmēram tādā pseidovariantā:

<script>

var oOption = window.opener.document.createElement("option");

oOption.value = ...;

oOption.innerText = ...;

window.opener.document.getElementById('selects').appendChild(oOption);

</script>

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...