Textarea tab
Here is example of code that will allow neter tabs into textarea
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">
function setSelectionRange(input, selectionStart, selectionEnd) {
if (input.setSelectionRange) {
input.focus()
input.setSelectionRange(selectionStart, selectionEnd)
} else if (input.createTextRange) {
var range = input.createTextRange()
range.collapse(true)
range.moveEnd('character', selectionEnd)
range.moveStart('character', selectionStart)
range.select()
}
}
function replaceSelection(input, replaceString) {
if (input.setSelectionRange) {
var selectionStart = input.selectionStart
var selectionEnd = input.selectionEnd
input.value = input.value.substring(0, selectionStart) + replaceString + input.value.substring(selectionEnd)
if (selectionStart != selectionEnd) {
setSelectionRange(input, selectionStart, selectionStart + replaceString.length)
} else {
setSelectionRange(input, selectionStart + replaceString.length, selectionStart + replaceString.length)
}
} else if (document.selection) {
var range = document.selection.createRange()
if (range.parentElement() == input) {
var isCollapsed = range.text == ''
range.text = replaceString
if (!isCollapsed) {
range.moveStart('character', -replaceString.length)
range.select()
}
}
}
}
// We are going to catch the TAB key so that we can use it, Hooray!
function catchTab(item, e) {
if (navigator.userAgent.match('Gecko')) {
c = e.which
} else {
c = e.keyCode
}
if (c == 9) {
replaceSelection(item, String.fromCharCode(9))
setTimeout("document.getElementById('" + item.id + "').focus();", 0)
return false
}
}
</script>
</head>
<body>
<textarea name="data" id="data" rows="20" columns="35" wrap="off" onkeydown="return catchTab(this,event)"></textarea>
</body>
</html>