Código:
if (formulario.textarea.value.length = 0 || formulario.textarea.value.length <= 10)
{
formulario.T2.value = '1';
}
else
if (formulario.textarea.value.length >= 11 || formulario.textarea.value.length <= 20)
{
formulario.T2.value = '2';
}
else
if (formulario.textarea.value.length >= 21 || formulario.textarea.value.length <= 30)
{
formulario.T2.value = '3';
}
lo que esta en rojo es error sintactico y lo que esta en azul es error de logica. recordar que el operador = significa
asignar a y tu lo que realmente quieres hacer es
comparar dos argumentos, el operador correcto es ==. en cuanto la parte azul me tiene un tanto confuso, especificamente cuando usas
length. length devuelve la longitud de caracteres en un string y yo dudo que realmente tu quieras saber la longitud. tu aplicacion lo que me esta indicando es que tengo que escribir un texto de entre 0 a 10 chars, o 11 a 20 chars, etc. si es eso lo que realmente intentas, entonces no hay problema. pero si no lo es, simplemente eliminas
.length.
en cuanto al operador || es el operador incorrecto porque tu quieres evaluar que las dos condiciones sean ciertas para que se ejecute el bloque. cambialo por &&.