Autor | Zpráva | ||
---|---|---|---|
Petr-K Profil * |
#1 · Zasláno: 20. 3. 2011, 22:00:11
Ahoj všem,
víc než poradit bych dnes potřeboval malou pomoc, teda pokud by se našla nějaká dobrá duše. JS jsem se bohužel nikdy pořádně nenaučil a ani se mi nepodařilo najít vhodný příklad ze kterého bych čerpal. Jak mohu vytisknout text z elementu textarea aniž by předcházela nějaká mezistránka? Děkuji. |
||
zdenek Profil |
#2 · Zasláno: 20. 3. 2011, 22:09:42 · Upravil/a: zdenek
Petr-K:
jako takhle? <?php if (isset($_POST['ok'])) { // jestli byl formular odeslan echo $_POST['obsah']; //zobraz napsany obsah } else { //jinak zobraz formular s textarea ?> <form method="POST"> <textarea name="obsah">Sem zadejte text</textarea> <input type="submit" name="ok"> </form> <?php } ?> EDIT: až moc pozdě jsem si všiml, že vy to chcete v javascriptu. Omlouvám se. |
||
Petr-K Profil * |
#3 · Zasláno: 20. 3. 2011, 22:21:19
zdenek:
Děkuji za snahu, ale odeslání formuláře je to nejmenší :) Asi jsem svůj původní dotaz napsal ne zcela přesně. Měl jsem namysli, poslat obsah elementu textarea do tiskárny a fyzicky ho vytisknout. |
||
_es Profil |
#4 · Zasláno: 21. 3. 2011, 00:47:54
Petr-K:
„Měl jsem namysli, poslat obsah elementu textarea do tiskárny a fyzicky ho vytisknout.“ Nastav štýl pre tlač tak, aby sa tlačila len tá textarea a zavolaj metódu print. |
||
Yuhů Profil |
#5 · Zasláno: 21. 3. 2011, 00:56:20
Petře, máš pocit, že se ten obsah elementu textarea nevytiskne? Moje pokusy říkají, že se textarea tiskne i s tím obsahem, který v ní je (ve všech prohlížečích). Pokud jde o to vytisknout jenom ten obsah, tak rada od _es je správná.
|
||
Petr-K Profil * |
#6 · Zasláno: 21. 3. 2011, 11:41:36
_es:
Ano tímto způsobem to mám momentálně vytvořené. Problém je v tom, že text, který se vkládá do elementu textarea může být větší než rozměry samotného elementu (posuvníkem si jej mohu přečíst celý). Tzn. že se nevytiskne všechen text, ale jen první řádky, které se do pole vejdou. Yuhů: Zkoušel si tisknout i text, který přesahuje rozměry nastaveného elementu? (viz. zpráva pro _es) |
||
_es Profil |
#7 · Zasláno: 21. 3. 2011, 11:47:31
Petr-K:
„že se nevytiskne všechen text, ale jen první řádky, které se do pole vejdou.“ Môžeš predsa nastaviť iné rozmery textarey pre tlač a iné pre zobrazenie na monitore. |
||
Petr-K Profil * |
#8 · Zasláno: 21. 3. 2011, 12:06:19
_es:
to sice mohu udělat, ale nevím jak zajistím, aby se textarea automaticky zvětšila podle velikosti textu. Rozsah textu v elementu není omezen a ve stylu pro tisk nechci uvádět natvrdo bůh ví jak velikou velikost (při tisku jedné řádky by pak z tiskárny vylezlo x dalších prázdných stránek). |
||
1Pupik1989 Profil |
#9 · Zasláno: 21. 3. 2011, 14:54:16
Pro tisk bych přeměnil Textareu na Div s plovoucí výškou nebo jí skryl a vytvořil nový Div na stenjém místě.
|
||
Petr-K Profil * |
#10 · Zasláno: 21. 3. 2011, 15:12:54
1Pupik1989:
Jak to myslíš přeměnil? |
||
1Pupik1989 Profil |
#11 · Zasláno: 21. 3. 2011, 15:14:21
Skryl bych Textareu a na její místo bych dal div.
|
||
Petr-K Profil * |
#12 · Zasláno: 21. 3. 2011, 15:35:42
Teď si připadám hodně natvrdle.. :) Můžeš mi sem hodit jen náčrt jak to myslíš?
Pro upřesnění doplňuji: - textarea je součástí formuláře kam uživatel píše text (pozn. tím textem jsou SQL dotazy, které dále zpracovávám a vyhodnocuji - vše pro studijní účely do školy) - vytisknout se má pouze obsah elementu textarea aniž by se musel formulář odeslat - nechci to řešit způsobem, kdy obsah elementu vypíšu na jiné stránce a tu pak budu tisknout, rád bych našel způsob jak ihned tisknout obsah elementu |
||
_es Profil |
#13 · Zasláno: 21. 3. 2011, 16:03:39
Petr-K:
„náčrt jak to myslíš?“ Myslí to tak, že do dokumentu dynamicky pridáš DIV, do neho skopíruješ obsah textarey a ten DIV dáš potom vytlačiť. |
||
Chamurappi Profil |
#14 · Zasláno: 21. 3. 2011, 16:23:54 · Upravil/a: Chamurappi
Reaguji na Petra-K:
Nebo také jde zjistit výšku obsahu elementu <textarea> a pak podle zjištěného rozměru přenastavit pevně danou výšku. Zdroj inspirace: Automatická velikost textarey podle délky textu
|
||
1Pupik1989 Profil |
#15 · Zasláno: 21. 3. 2011, 17:08:35
Petr-K:
„Teď si připadám hodně natvrdle.. :) Můžeš mi sem hodit jen náčrt jak to myslíš?“ Tak jsem udělal honem Ukázku |
||
Chamurappi Profil |
#16 · Zasláno: 21. 3. 2011, 17:28:49
Reaguji na 1Pupika1989:
Hm, což takhle se nejprve naučit JavaScript? Kde máš var ? Proč nastavuješ hodnotu z formulářového pole jako HTML kód a ne jako prostý text? Proč se dotazuješ prohlížeče na vypočítaný styl vlastnosti display , když si můžeš stav jednoduše pamatovat? Proč skriptem ošetřuješ vyvolání funkce po načtení stránky, když ji můžeš mnohem jednodušeji vyvolat po načtení příslušných elementů?
Krom toho bys možná měl změnit hosting, domény toho spammera, jehož reklamní banner ti visí v ukázce, zde mají permanentní ban. |
||
1Pupik1989 Profil |
#17 · Zasláno: 21. 3. 2011, 17:46:47 · Upravil/a: 1Pupik1989
To měla být ukázka, jak to zhruba bude vypadat, ne hotový příklad, na to je málo času.
|
||
Chamurappi Profil |
#18 · Zasláno: 21. 3. 2011, 17:56:16
Reaguji na 1Pupika1989:
Ukázka, ve které je v podstatě všechno kromě již slovně popsaného principu špatně. |
||
1Pupik1989 Profil |
#19 · Zasláno: 21. 3. 2011, 18:06:13
Ale mě je fuk co tam je špatně, dělá to co jsem chtěl. Navíc nikde to asi nepoužiji a když už, tak to napíšu znovu. Tohle je nápad, mám se rozepisovat jaký je rozdíl mezi nápadem a hotovou věcí?
|
||
Chamurappi Profil |
#20 · Zasláno: 21. 3. 2011, 18:33:39
Reaguji na 1Pupika1989:
„mám se rozepisovat jaký je rozdíl mezi nápadem a hotovou věcí?“ Na to je málo času, ne? :-) Tohle byl nápad. Lepší žádný příklad, než příklad se začátečnickými chybami. „dělá to co jsem chtěl“ Scucne to víceřádkový text z <textarea> do jednoho řádku.
|
||
1Pupik1989 Profil |
#21 · Zasláno: 22. 3. 2011, 22:40:08
Je to lepší? Aby si měl klid v duši :)
|
||
joe Profil |
#22 · Zasláno: 22. 3. 2011, 22:46:38
1Pupik1989:
Co když tam bude TAB? |
||
1Pupik1989 Profil |
#23 · Zasláno: 22. 3. 2011, 23:04:44
S čím jsem nepočítal, takže jsem to pro jistotu hodil do tagu pre.
|
||
Petr-K Profil * |
#24 · Zasláno: 22. 3. 2011, 23:41:58
Pánové, děkuji za vaše příspěvky.
1Pupik1989: Tvou ukázku jsem pochopil, nicméně ji nepoužiji, ale i tak díky. Chamurappi: To zvětšování velikosti je pěkné, už jsem něco podobného zkoušel pomocí jQuery (plugin autoResize). V IE mi to bohužel nekoordinovaně skákalo (zvětšovalo - zmenšovalo) po přidání nového znaku. Stejný problém prý je i s Tvým řešením, takže jsem ho ani nezkoušel... promiň... Bohužel, neumím JS moc dobře opravit. :( Jak jsem na psal (i na úvod vlákna)... JS neovládám, takže jsem myslel, že už někdo něco podobného někdo řešil a je k dispozici nějaký hotový scriptík. Prozatím jsem to vyřešil tak, že před tiskem vypíšu element na jinou stránku, kterou následně vytisknu. Sice jsem se této mezistránky chtěl vyvarovat, ale co se dá dělat, jako provizorní řešení OK - snad přijdu brzo na něco jiného. Kdyby někoho něco napadlo a přihodil to sem, budu rád. Ještě jednou vám moc děkuji za účast ve vlákně. Petr |
||
1Pupik1989 Profil |
#25 · Zasláno: 23. 3. 2011, 00:13:01
Tak máš pár možností, třeba Resize textarea (tahem myší) nebo Autogrow plugin (automaticky při psaní)
|
||
Časová prodleva: 13 let
|
0