peterS.: [window].location.reload

Beitrag lesen

hallo again gerald,

Fenster 1
Listet Datenbankinhalte

User will Datenbanzeile (row)  ändern
  Fenster 2 wird geöffnet mit win = window.open(adresse, “titel“);

die [Fenster 2] referenzierende variable [win] innerhalb von [Fenster 1]
braucht es nochnichteinmal.

Fenster 2
Update/Delete/Insert Datenbankinhalte
Nach der Datenbankaktion soll Fenser 1 aktualisert werden.

Wie löst Du so etwas?

ohne jetzt AJAX ins spiel zu bringen ungefaehr so:

  1. der update Deiner datenbank erfolgt ja hoechstwahrscheinlich durch
       das abschicken eines formulars ... die klassiche rueckmeldung waere
       dann ein weiters dokument, welches nach [Fenster 2] geladen wird.
       das javascript dieses dokuments verbaeckt dem load-event des fensters
       dann die aktualisierung von [Fenster 1]:

~~~javascript (function () {

if (window.addEventListener) {

window.addEventListener("load", (function () {

if (opener && opener.location && opener.location.reload) {
          opener.location.reload(true);
        }
      }), false);

} else if (window.attachEvent) {

window.attachEvent("onload", (function () {

if (opener && opener.location && opener.location.reload) {
          opener.location.reload(true);
        }
      }));
    }
    delete arguments.callee;

})();

  
2) alternativ koennte man auch versuchen, [Fenster 1] durch scripting  
   nachtraeglich einen [name] zu verpassen, um dieses fenster dann  
   moeglicherweise innerhalb der window/frames-hierarchie ueber das  
   html-target-attribut von links oder eben wie in diesem fall von  
   formularen adressieren zu koennen:  
  
   ... meinetwegen auch auf \*onload\* ... »`window.name = "dbState"`{:.language-javascript}«  
  
   falls das geht - ich hab' das nie getestet - bekommt das formular  
   des in [Fenster 2] liegenden dokuments ein target-attribut, dessen  
   wert mit dem durch das scripting in [Fenster 1] gesetzten namen  
   uebereinstimmt. perfekt waere es natuerlich, wenn die [action] des  
   formulars die gleichlautende dokumenten-adresse aus [Fenster 1]  
   bekaeme.  
   das durch den serverprozess nach [Fenster 1] zurueckgegebene dokument  
   entspraeche dann in adresse/referenzierung, form/aufbau/struktur dem  
   schon zuvor geladenem dokument.  
  
  
  
gute nacht - peterS. - pseliger@gmx.net  
  
  

-- 
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.  
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - [Douglas Crockford](http://javascript.crockford.com/)  
  
[ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:\]](http://www.peter.in-berlin.de/projekte/selfcode/?code=ie%3A%28+fl%3A%29+br%3A%3E+va%3A%28+ls%3A%26+fo%3A%29+rl%3A%29+n3%3B%7D+n4%3A%7D+ss%3A%7D+de%3A%B5+js%3A%7D+mo%3A%3F+zu%3A%5D)