| Autor | Zpráva | ||
|---|---|---|---|
| deliQus Profil |
#1 · Zasláno: 27. 11. 2009, 20:54:48
Mám tento skript s vkládáním tagu do textarea, ale vždy to mohu použít jen pro 1 textarea. Jak mám prosím co nejjednodušeji udělat, aby se ten javascript dal použít pro dvě textarea ?
<script>
function vlozTag(tag)
{
switch (tag)
{
case ':)': vlozNaKurzor(' '+tag+' ',false,''); break;
case 'HR': vlozNaKurzor('<'+tag+'>',false,'\n'); break;
default: vlozNaKurzor('<'+tag+'>',true,'</'+tag+'>'); break;
}
}
function vlozNaKurzor(text_pred, text_puvodni, text_za)
{
var textarea = document.formular.text;
if (typeof textarea.selectionStart != 'undefined') // www Moz ; jestlize textarea.selectionStart existuje, pak...
{
var zacatek = textarea.selectionStart; // zjisti pozici oznaceni v textarea, zacatek
var konec = textarea.selectionEnd; // a konec
var text_stred = (text_puvodni) ? textarea.value.substring(zacatek, konec) : ''; // jestlize chceme zachovat puvodni text, pak si jej ulozime nebo prepiseme prazdnym retezcem
text_stred = text_pred + text_stred + text_za; // naplnime text pro vepsani
textarea.focus(); // nastavime pozici v dokumentu na textarea
textarea.value = textarea.value.substr(0,zacatek) + text_stred + textarea.value.substr(konec); // zkopirujeme text pred zacatkem, vepiseme nas text, zkopirujeme text za koncem
textarea.selectionStart = zacatek + text_stred.length; // nastav kurzor za vlozeny text, zacatek
textarea.selectionEnd = zacatek + text_stred.length; // a konec
}
else if (typeof document.selection != 'undefined') // www IE ; jestlize document.selection existuje, pak...
{
var text_stred = (text_puvodni) ? document.selection.createRange().text : ''; // jestlize chceme zachovat puvodni text, pak si jej ulozime nebo prepiseme prazdnym retezcem
text_stred = text_pred + text_stred + text_za; // naplnime text pro vepsani
textarea.focus(); // nastavime pozici v dokumentu na textarea
var oznaceni = document.selection.createRange(); // priradime oznaceni do promenne
oznaceni.text = text_stred; // prepiseme text v oznaceni;
oznaceni.select(); // nastav kurzor za vlozeny text
}
else { // www ostatni ; provede vlozeni na konec textu
text_stred = text_pred + text_stred + text_za; // naplnime text pro vepsani
textarea.focus(); // nastavime pozici v dokumentu na textarea
textarea.value += text_stred; // pridej na konec
}
}
</script>
<form name="formular" method="post" action="index.php?page=zadejuvod" enctype="multipart/form-data method=post">
<fieldset>
<legend>Přidat článek </legend>
<table>
<tr>
<td>Nadpis:</td>
<td><input name="nadpis" value="<?echo $_POST["nadpis"]?>"></td>
</tr>
<tr>
<td>Autor:</td>
<td><? include("autori.php"); ?></td>
</tr>
<tr>
<td>Nazev obrazku:</td>
<td><input name="img"></td>
</tr>
<tr>
<td>Obrazek:</td>
<td><input type="file" name="fupload"></td>
</tr>
<tr>
<td>Text: </td>
<td><div style="_margin:0.5em;">
<div>
<input type="button" value=" B " onclick="vlozTag('B')">
<input type="button" value=" I " onclick="vlozTag('I')">
<input type="button" value=" U " onclick="vlozTag('U')">
<input type="button" value=" HR " onclick="vlozTag('HR')">
<input type="button" value=" usmev :) " onclick="vlozTag(':)')">
</div>
<textarea cols="60" rows="10" name="text"><?echo $_POST["text"]?></textarea>
</div> </td>
</tr>
<tr>
<td>Text-po kliknutí: </td>
<td><div style="_margin:0.5em;">
<div>
<input type="button" value=" B " onclick="vlozTag('B')">
<input type="button" value=" I " onclick="vlozTag('I')">
<input type="button" value=" U " onclick="vlozTag('U')">
<input type="button" value=" HR " onclick="vlozTag('HR')">
<input type="button" value=" usmev :) " onclick="vlozTag(':)')">
</div>
<textarea cols="60" rows="10" name="dale"><?echo $_POST["dale"]?></textarea>
</div> </td>
</tr>
<tr>
<td colspan="2"><input type="Submit" name="odesli" value="Pridat"></td>
</tr>
</table>
</form>
<?endif;?>
|
||
| yFang Profil |
#2 · Zasláno: 27. 11. 2009, 22:38:58
Přidej parametr name textarey a podle toho uprav to definování na prvním řádku funkce.
|
||
|
Časová prodleva: 3 měsíce
|
|||
| Petr Havel Profil |
#3 · Zasláno: 11. 3. 2010, 17:14:03 · Upravil/a: Petr Havel
Mohli byste mi to blíže popsat, jak na to?
Dík |
||
|
Časová prodleva: 16 let
|
|||
0