|
|
|
Przekierowanie / nowa strona - ciekawy problem? |
« Zobacz poprzedni temat :: Zobacz następny temat » |
Autor |
Wiadomość
|
trejder |
Wysłany: 25 Wrz 2009, 07:04 Temat postu: Przekierowanie / nowa strona - ciekawy problem? |
|
|
Nowicjusz
Dołączył: 25 Wrz 2009 Posty: 2
|
Witam,
Piszę "plugin", czyli kawałek kodu PHP, który odbiorca będzie mógł załączyć sobie na swojej stronie przy pomocy iframe. Musi to być tak rozwiązane, bo docelowa strona, na której plugin ma się pojawiać może być napisana w dowolnym języku - PHP, XHTML, ASP, ColdFusion, etc. - więc iframe wydaje mi się być jedynym rozwiązaniem.
Jednak problem w tym, że plugin, jak tu plugin ma zajmować niewiele miejsca (powiedzmy 400x200 px), aby załączyć go na stronie docelowej. I w momencie uruchomienia będzie w nim formularz do wpisania różnych danych. Lecz wyniki działania tego formularza muszą już koniecznie, bezwzględnie i absolutnie wyświetlać się na nowej, pełnej stronie. Albo otwartej w nowej zakładce (raczej nie nowym oknie, aby pop-up blockery nie zablokowały) albo na przykład przez nadpisanie adresu strony w której plugin był otwarty i wyświetlenie w tym samym oknie / zakładce, ale w pełnych wymiarach.
I prawdę mówiąc - utknąłem. Nie mam pojęcia w jakim języku (JavaScript, czy PHP) to zrobić i jak? Może Ajax / jQuery? Jeśli zrobię redirecta po stronie serwera (w PHP) to i tak cała zawartość zostanie wyświetlona w iframie, czego muszę uniknąć jak ognia. A jeśli miałby to realizować JavaScript na przykład w zdarzeniu OnClick klawisza wysyłającego formularz, to czy ktoś może mi doradzić jak to rozwiązać?
Czy to w ogóle da się rozwiązać? |
|
Powrót do góry |
|
|
KCS |
Wysłany: Temat postu: Reklama w KCS |
|
|
|
|
Powrót do góry |
|
|
trejder |
Wysłany: 25 Wrz 2009, 12:43 Temat postu: |
|
|
Nowicjusz
Dołączył: 25 Wrz 2009 Posty: 2
|
Heh, sam sobie odpowiadam! :] Problem rozwiązałem, a być może zainteresuje to innych.
U mnie zadziałał kod JavaScript:
Kod: | function DoSubmit(addr, target, method)
{
var theform = document.forms[0];
theform.action = addr;
if (target != '_blank' && target != '_new')
theform.target = target;
else
theform.target = Math.round(32000 * Math.random());
theform.method = method;
theform.submit();
return true;
} |
Bezczelnie zerżnięty ze stron mBanku, skrócony i pozbawiony tego, co mi niepotrzebne.
Aby go wywołać zamiast typowego klawisza typu submit dajemy:
Kod: | <button onclick="DoSubmit('target.php','_top','GET');return false">Dalej</button>
|
Funkcja jest o tyle "wypasiona", że pozwala otwierać wynik działania formularza po "wyskoczeniu" z iframe'a (jak ja chciałem) albo w nowej zakładce / oknie, a robi to dzięki JavaScript, nie stosując parametru target znacznika form, który jest deprecated. Dzięki temu funkcji można używać również w dokumentach typu Strict.
Oczywiście, to nie zadziała wcale, jeśli użytkownik ma wyłączony JavaScript. Ale to już nie mój problem! |
|
Powrót do góry |
|
|
|
|
|
|
Strona 1 z 1 |
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
|
|
|