Skusal som to riesit takto: vytvoril som si fciu html(), ktora ma parameter nazovtagu. Mam pole opened_tags, kde je zoznam vsetkych otvorenych znaciek (defaultne je pole prazdne). Po vyvolani tejto fcie (na kazdom buttone mam onclick="html('nazovtagu')") by sa mala do textarei vlozit otvaracia znacka, ak dany tag nie je v poli opened_tags, alebo uzatvaracia znacka, pokial to v poli je. Pritomnost prvku v poli testujem pomocou fcie array_search, ktoru som nasiel kdesi na internete.
Problem je ten, ze mi to stale vklada len otvaracie znacky, a tiez by som potreboval, pokial je uz vlozena aj uzatvaracia znacka, odstranit tuto znacku z pola opened_tags, to uz absolutne netusim
prikladam kod, snad mi niekto pomoze. vopred dik.
Kód: Vybrať všetko
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title></title>
<script type="text/javascript">
function array_search(val,array)
{
for (var i = 0; i < array.length; i++)
{
if (array[i] == val)
{
return i;
}
}
return false;
}
function html(tag)
{
var opened_tags=new Array();
var textarea=document.getElementById('textarea');
if (array_search(tag, opened_tags))
{
textarea.focus();
textarea.value=textarea.value+'</'+tag+'>';
}
else
{
textarea.focus();
textarea.value=textarea.value+'<'+tag+'>';
opened_tags.push(tag);
}
}
</script>
</head>
<body>
<div>
<input type="button" value="strong" onclick="html('strong')">
<input type="button" value="em" onclick="html('em')">
<input type="button" value="ins" onclick="html('ins')">
<input type="button" value="del" onclick="html('del')">
<input type="button" value="q" onclick="html('q')">
<input type="button" value="code" onclick="html('code')">
<input type="button" value="ul" onclick="html('ul')">
<input type="button" value="li" onclick="html('li')">
</div>
<textarea id="textarea" cols=50 rows=15></textarea>
</body>
</html>