function addvaluetag(this.value,'tag') werkt wel in ff niet in ie

Status
Niet open voor verdere reacties.

thecreator

Gebruiker
Lid geworden
29 mei 2008
Berichten
8
Ik heb op internet een scriptje gevonden voor bbcode in een textvak te zetten. Alleen nou werkt het wel helemaal in firefox en andere browsers maar niet in internet explorer.

hier het stuk waar het eigenlijk om gaat:
HTML:
				<select onchange="addvaluetag(this.value,'size'); this.selectedIndex = 0;" style="width:100px; height:21px">
					<option value="" selected="selected">Size</option>
					<option value="10" style="font-size:10pt">10 pt</option>
					<option value="12" style="font-size:12pt">12 pt</option>
					<option value="14" style="font-size:14pt">14 pt</option>
				</select>

en het stukje bijhorende javascript:
JavaScript:
function addvaluetag(sValue,tag) {
	if(sValue=="") {
		return;
	}
	var txt = document.getElementById('mta');
	if(document.selection) {
		txt.focus();
		sel = document.selection.createRange();
		sel.text = '["+tag+"=' + sValue + ']' + sel.text + '[/"+tag+"]';
	} else if(txt.selectionStart || txt.selectionStart == '0') {	
		txt.value = (txt.value).substring(0, txt.selectionStart) + "["+tag+"="+sValue+"]" + (txt.value).substring(txt.selectionStart, txt.selectionEnd) + "[/"+tag+"]" + (txt.value).substring(txt.selectionEnd, txt.textLength);
	} else {
		txt.value = '["+tag+"=' + sValue + '][/"+tag+"]';
	}
	return;
}

als ik de 'size' verander dan krijg ik in 'ie' ["+tag+"=14][/"+tag+"] terug in het de 'textarea'
 
Dat komt door het mixen van verschillende quotes. Je opent met enkele quotes en sluit met dubbele. Dat gaat natuurlijk niet dus worden de dubbele quotes in de tekst opgenomen.

Deze regel moet dus anders:
Code:
sel.text = '["+tag+"=' + sValue + ']' + sel.text + '[/"+tag+"]';

Iets als dit namelijk:
Code:
sel.text = '['+tag+'=' + sValue + ']' + sel.text + '[/'+tag+']';
Of je kunt juist uitsluitend dubbele quotes gebruiken. Het maakt niet uit.
 
Laatst bewerkt:
Dat komt door het mixen van verschillende quotes. Je opent met enkele quotes en sluit met dubbele. Dat gaat natuurlijk niet dus worden de dubbele quotes in de tekst opgenomen.

Ik ben niet echt thuis in javascript doe meer met php en (x)html, dit script heb ik zo van hotscripts gehaald en in mijn eigen website gepast.
Maar ook in het officiële voorbeeld(demo) op hotscript werkte het niet goed in internet explorer.
http://www.youtipgaming.com/trial/bbcode/bbcode.htm

Ik heb het nu aangepast en nu werkt het wel thanx.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan