Autor Zpráva
mstar
Profil
Potřeboval bych pomoct s vkládáním textu do textarea. Samotné vkládání mi funguje - předefinovaný text se vloží hned za zapsaný text. Snažil jsem se o zapsání textu na nový řádek, bohužel nevím, jak toho dosáhnout. Prosím proto o pomoc. Pozn. Kód je vytažený z PHP


<SCRIPT LANGUAGE="JavaScript">
<!--
function insert(tag)
{
document.editor.page.value += '<'+tag+'> </'+tag+'>';
}
-->
</SCRIPT>";

<input type="button" name="tucne" onclick="insert('b')" value="Tučné">
<input type="button" name="kursiva" onclick="insert('ins')" value="Kurzíva">
nosko
Profil *

function insert(tag)
{
document.editor.page.value += ' <'+tag+'> </'+tag+'>';
}
</SCRIPT>
nosko
Profil *
Prepáč, nejak zle to vypísalo, aha vlastne dobre :) proste pred <'+tag+'> daj:
 n
bez medzery
nosko
Profil *
Prepáč, nejak zle to vypísalo, aha vlastne dobre :) proste pred <'+tag+'> daj:
 n
bez medzery
mstar
Profil
To se mě zdálo jako logický řešení, bohužel to s tím nevalí... Navíc jsem zjisti, potřebuju to totiž do jednoduchýho HTML editoru, že když chci vložit značku třeba div do p, přidá se mi to opět na konec, což mi nevyhovuje. Našel jsem sice funkci insertAtCursor() ... nějak mi ale nejde rozchodit
nosko
Profil *
Ešte k tvojej prvej otázke:


<SCRIPT LANGUAGE="JavaScript">



function insert(tag)
{
document.getElementById("area").value += 'x<'+tag+'> </'+tag+'>';
}
</SCRIPT>
</head>
<body>
<input type="button" name="tucne" onclick="insert('qweqwe')" value="Tučné">
<input type="button" name="kursiva" onclick="insert('qweqweqw')" value="Kurzíva">
<textarea id="area" rows="40" cols="40"></textarea>


Toto mi funguje, x-nahraď spätným lomítkom a n-kom :))
mstar
Profil
Tak už jsem to rozchodil .. dík moc ... jsem totiž zapomněl, že to vypisuju pomocí PHP, takže mi tam to zpětný lomítko dělalo neplechu. Jen zjišťuju, že to tak asi nepůjde ... vkládání tagů do sebe takhle nějak nejede, každý nový tag se totiž hodí nakonec. Chtělo by to spojit to s tou fcí insertAtCursor, akorát mi taky pořád hází chybu
nosko
Profil *
som našiel tento script:

function insertAtCursor(myField, myValue) {
//IE support

if (document.selection) {
myField.focus();
sel = document.selection.createRange();
sel.text = myValue;
}

//MOZILLA/NETSCAPE support

else if (myField.selectionStart || myField.selectionStart == '0') {
var startPos = myField.selectionStart;
var endPos = myField.selectionEnd;
myField.value = myField.value.substring(0, startPos)+ myValue+ myField.value.substring(endPos, myField.value.length);
}
else {
myField.value += myValue;
}
}

<input type="button" name="kursiva" onclick="insertAtCursor(document.getElementById('area'), 'novucke');" value="Kurzíva">


mne osobne funguje, tak snáď pôjde ;)
mstar
Profil
Tak to mám komplet, fakt moc díky za pomoc. Teď už to jen nacpat na stránky a editace z webu bude hotová. Ještě jednou díky

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