Jump to content

Another Javascript/jQuery problem


Andy11548

Recommended Posts

Right, I'm running into a random problem.

 

When I press the Bold Button it works fine, it replaces the string highlighted with '' tags around it. However, when I press the Italic/Underline button etc it doesn't work :/.

 


var text = "";

function ShowSelection() {
  var textComponent = document.getElementById('topicMessage');
  var selectedText;
  // IE version
  if (document.selection != undefined)
  {
    textComponent.focus();
    var sel = document.selection.createRange();
    selectedText = sel.text;
  }
  // Mozilla version
  else if (textComponent.selectionStart != undefined)
  {
    var startPos = textComponent.selectionStart;
    var endPos = textComponent.selectionEnd;
    selectedText = textComponent.value.substring(startPos, endPos)
  }
  
  text = selectedText;
}


$(document).ready(function() {
$('#bbcode_bold').click(function() { //BBCODE BOLD
	var textarea = $('textarea').val();
	textarea = textarea.replace(text, '[b]' + text + '[/b]');

	$('textarea').val(textarea);
});
$('#bbcode_italic').click(function() { //BBCODE ITALIC
	var textarea = $('textarea').val();
	textarea = textarea.replace(text, '[i]' + text + '[/i]');

	$('textarea').val(textarea);
});
$('#bbcode_underline').click(function() { //BBCODE UNDERLINE
	var textarea = $('textarea').val();
	textarea = textarea.replace(text, '[u]' + text + '[/u]');

	$('textarea').val(textarea);
});
$('#bbcode_strikethrough').click(function() { //BBCODE STRIKETHROUGH
	var textarea = $('textarea').val();
	textarea = textarea.replace(text, '[strike]' + text + '[/strike]');

	$('textarea').val(textarea);
});
});

Link to comment
https://forums.phpfreaks.com/topic/267036-another-javascriptjquery-problem/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.