Hola
Prueba con esto
Código Javascript
:
Ver original<html>
<head>
<script type="text/javascript">
var control = 0;
function muestraentextarea(correo) {
var txtarea = document.getElementById("envia_emails");
cantidad_emails = txtarea.value.split(",");
if (cantidad_emails.length <= 3) {
if (control == 0) {
txtarea.value += correo;
} else if (control <= 3) {
txtarea.value += "," + correo;
}
}
control += 1;
//alert(cantidad_emails.length);
}
var total = 0;
var valor_max = 0;
function valcantidad(txtarea) {
cantidad_emails = txtarea.value.split(",");
total = txtarea.value.length;
if (cantidad_emails.length <= 4) {
valor_max = 0;
for (i = 0; i < cantidad_emails.length; i++) {
valor_max += cantidad_emails[i].length;
}
if(total > parseInt(valor_max+3)) {
txtarea.value = txtarea.value.substring(0,parseInt(valor_max+3));
}
} else {
txtarea.value = txtarea.value.substring(0,total-1);
}
}
</script>
</head>
<body>
<form name="forms">
<select multiple="multiple" size="7" name="correos" id="correos" style="width: 500px;" onchange="muestraentextarea(this.options[this.selectedIndex].value)">
</select>
<br /><br />
<textarea name="envia_emails" id="envia_emails" style="width: 500px;" rows="5" onkeyup="valcantidad(this);"></textarea>
</form>
</body>
</html>
Suerte