przesłać formularz, przeładować rodzica i zamknąć dziecko
Mam problem z problemem między przeglądarkami, niekoniecznie z przeglądarką.
Próbuję otworzyć okno podrzędne, w którym użytkownik prześle formularz. Po przesłaniu skrypt PHP powinien zostać wywołany, aby załadować dane formularza podrzędnego. Następnie dziecko powinno przeładować okno nadrzędne zawierające część zawartości dodanej w formularzu podrzędnym, a także zamknąć formularz podrzędny ...
Użytkownicy nie będą korzystać z żadnej innej przeglądarki innej niż IE, ale z różnych wersji (wolałbym, aby była w pełni zgodna, ale załatwię z różnymi IE). Nie miałem z tym problemu w IE10, ale nie mogę go uruchomić w IE8. Są użytkownicy, którzy muszą używać IE8 (utknęli na XP z powodu innego oprogramowania, które nie działa na 7 lub 8).
Próbowałem tego:
<form name="parts" id="parts" action="tableaddrow_nw.php" method="get" onsubmit="window.opener.document.location.href='q.php?q=<?php echo $q; ?>&memberid=<?php echo $memberid; ?>'; self.close();">
Próbowałem tego:
<form name="parts" id="parts" action="tableaddrow_nw.php" method="get">
<input type="button" value="Save & Close Window" class="submit" onclick="validateRow(this.form);"
gdzievalidateRow(this.form);
funkcja to:
function validateRow(frm)
{
frm.submit();
window.opener.document.location.href='q.php?q=<?php echo $q; ?>&memberid=<?php echo $memberid; ?>';
this.window.close();
}
Odwróciłem również przesyłanie i przeładowanie, które przeczytałem przy wysyłaniu, ale dla mnie to nie działa.
Kod PHP działa dobrze, ponieważ jest dobry w wersji IE10. Zasadniczo usuwa poprzednie wpisy, a następnie odczytuje wysłaną tablicę i sprawdza, czy indeksy są poprawne, i ponownie ładuje dane tablicy.
Jeśli nie zamknę okna, działa poprawnie w obu wersjach. Sądzę więc, że mam nadzieję, że ktoś może mi pomóc w zamknięciu okna przesyłania, ale może zaczekać wystarczająco długo, aby sprawdzić, czy przesłanie się powiodło.
Z góry dziękuję za wszelką pomoc.