Autor Zpráva
perwin
Profil
AHoj,
mám problém s vkládáním obrázku do textarea. Do normální textarei to jde, ale já jsem tuto upravil jako wysiwig editor, a tudíž to nelze. Prosím poraďte mi, jak to mám udělat. Formulář:
<form action='http://web.cz/diskuze/' method='post' name='formular'>
  <input type='hidden' name='sent' value=''/> 
<textarea name='body' id='body' style="background-color: white;" cols=50 rows=7 onKeyDown="textCounter(this.form.body,this.form.remLen,200);" onKeyUp="textCounter(this.form.body,this.form.remLen,200);"></textarea> 
<a href="javascript:smajlik(' *:-D* ')"><img src="http://web.cz/smiles/1.gif" border="0"></a>
 
<script type="text/javascript">
function smajlik(text) {
var textfield = document.getElementById('body');
 if (textfield.createTextRange && textfield.caretPos) {
var caretPos = textfield.caretPos;
caretPos.text =  caretPos.textarea.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
} else textfield.value += text;
textfield.focus(caretPos)
}
        var ste = new SimpleTextEditor("body", "ste");
        ste.init();
        </script>


<?php .... ?>
 <div style='text-align: center;'>
   <input id='i1' onclick="ste.submit();" type='submit' name='send' value='Vložit zprávu'/>
</div>
</form>

Děkuji
_es
Profil
perwin:
Dať nejakému elementu atribúty id a name s hodnotou "body" asi nie je dobrý nápad.
Ten text o vkladaní obrázku do textarea som celkom nepochopil, no textarea môže obsahovať len obyčajný neformátovaný text, nič iné.
Ak to obsahuje obrázky, tak to nie je textarea, ale niečo iné, ktoré môže napríklad textareu prekrývať.
Ako sa mení a vkladá obsah v tom editore, hľadaj v dokumentácii toho editora.

<input id='i1' onclick="ste.submit();" type='submit' name='send' value='Vložit zprávu'/>
Toto asi spôsobí odoslanie formulára dvojmo. Ako odoslanie normálneho formulára, aj ako odoslanie pomocou metódy editora.
perwin
Profil
_es:
textarea môže obsahovať len obyčajný neformátovaný text, nič iné
Nechci vložit do textarea ten obrázek, ale jenom *:-D* , php to už potom spracuje na <img ...>.

Toto asi spôsobí odoslanie formulára dvojmo. Ako odoslanie normálneho formulára, aj ako odoslanie pomocou metódy editora.
A jak to mám upravit? Podle mě je to jedno, hlavně že to funguje.
_es
Profil
perwin:
Nechci vložit do textarea ten obrázek, ale jenom *:-D*
No ale tá textarea je prekrytá tým editorom, čo si si pridal na stránky.
Takže musíš pridať ten text pomocou nejakej metódy toho editora.

A jak to mám upravit?
Pozri si na stránke toho editora nejaké vzorové kódy.
perwin
Profil
_es:
Takže musíš pridať ten text pomocou nejakej metódy toho editora.
Podívej se prosím na kód editoru ZDE
_es
Profil
perwin:
Podívej se prosím na kód editoru ZDE
Prečo by som mal analyzovať celý skript a špekulovať, čo ktorá funkcia asi tak robí?
Ten editor má snáď nejakú dokumentáciu, zoznam metód, vzorový príklad použitia, …
perwin
Profil
_es:
Ten editor má snáď nejakú dokumentáciu, zoznam metód, vzorový príklad použitia, …
Zde je homepage: http://www.gosu.pl/steditor/
_es
Profil
Je to nejaké nedokumentované. Metódu na vkladanie textu ten editor asi nemá. Skús použiť iný.
Alebo možno bude fungovať:
function vloz(html) {
  if (document.all) {
  var oRng = ste.frame.document.selection.createRange();
  oRng.pasteHTML(html);
  oRng.collapse(false);
  oRng.select();
  } else {
    ste.frame.document.execCommand('insertHTML', false, html);
  }
}
Je to podľa tohoto.
perwin
Profil
_es:
Odkaz by potom s tímto scriptem vypadal takto?:
<a href="javascript: vloz(' *:-D* ')"><img src="http://web.cz/smiles/1.gif" border="0"></a>

Jestli ano, tak script nefunguje.

Tu funkci vloz mám dát do editor.js nebo normálně na stránku? Ani v jednom případě to nefunguje.

Děkuji
_es
Profil
perwin:
Skúšal som to, funguje to v IE8, FF, Opera, Chrome, na tej stránke editora.
Daj odkaz, aby bolo jasné, kde je chyba.

Tu funkci vloz mám dát do editor.js nebo normálně na stránku?
Skús to dať do stránky až za volaním metódy init.
perwin
Profil
_es:
Díky, už mi to funguje :-).

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0