Bueno, tras diversas pruebas he podido darme cuenta que había cosas (y sigue habiendo, porque sigue sin funcionar, vaya) que no estaban bien.
En fin, sea como sea, el código que tengo ahora mismo es así:
Código JavaScript
:
Ver original<script type="text/javascript">
function valida_longitud ()
{
num_caracteres = getElementById("element_3_1").value.length
num_caracteres_permitidos = getElementById("element_8").value
if (num_caracteres_permitidos == 1)
num_caracteres_permitidos = 150
else
num_caracteres_permitidos = 300
if (num_caracteres > num_caracteres_permitidos){
getElementById("element_3_1").value = contenido_textarea
}else{
contenido_textarea = getElementById("element_3_1").value
}
if (num_caracteres >= num_caracteres_permitidos){
getElementById("element_3_2").style.color="#ff0000";
}else{
getElementById("element_3_2").style.color="#000000";
}
cuenta ()
}
function cuenta (){
document.getElementById("element_3_2").value=document.getElementById("element_3_1").value.length
}
</script>
El HTML, por su parte, lo tengo así:
Código HTML:
Ver original <label class="description" for="element_8">Seleccione tipo de anuncio:
</label> <input id="element_8" name="element_8" class="element radio" type="radio" value="1" onclick="getElementById('element_3_1').disabled = !this.checked" /> <label class="choice" for="element_8_1">1/3 Página :: 60 €
</label> <input id="element_8" name="element_8" class="element radio" type="radio" value="2" onclick="getElementById('element_3_1').disabled = !this.checked" /> <label class="choice" for="element_8_2">1/2 Página :: 90 €
</label> <input id="element_8" name="element_8" class="element radio" type="radio" value="3" onclick="getElementById('element_3_1').disabled = !this.checked" /> <label class="choice" for="element_8_3">1 Página :::: 180 €
</label> <label class="description" for="element_3_1">Texto del anuncio
</label> <div><textarea id="element_3_1" name="element_3_1" class="element textarea small" onkeydown="valida_longitud()" onkeyup="valida_longitud()"></textarea></div> <input id="element_3_2" name="element_3_2" class="element text" value="" type="text">
Básicamente el textarea es
element_3_1, el input
element_3_2 debería mostrarme el número de caracteres restantes y
element_8 es el radio button seleccionado.
El caso es que ni me desactiva el textarea hasta que selecciono un radio button, ni me indica el número máximo de caracteres...
¿Alguien sabría decirme que es lo que estoy haciendo mal? ¿Será que no lo estoy enfocando bien y habría maneras más fáciles?
Muchas gracias a todos por descontado y un saludo.