validacion de una select-option multiple

magia2000
30 de Marzo del 2005
Hola, estoy intentando hacer una validacion de una select multiple con javascript en un fromulario antes de ser enviada a un script PHP, el problema es ke el nombre de la select lleva corchetes para poder recibir en el script PHP todos los valores seleccionados sumultaneamente, pero no consigo hacer el script para sacar un error cuando no se ha seleccionado ninguna, os pongo el codigo de la select y del javascript para que me digais. Gracias

function validate(theform) {

alert (theform.cmmi_usuario[0]);
// alert (theform.cmmi_usuario[1]);

if (theform.cmmi_usuario.selectedIndex < 0){
alert("<?php echo( $lang_string['form_error1'] ); ?>");
return false;
} else {
return true;
}
}

esto valida solo una ke no es multiple, pero no una multiple.

<SELECT name="usuario[]" multiple size=15 tyle="width: 65ex;">

el problema esta al poner los cochetes que son necesarios como digo para poder recibir desde PHP todos los elementos seleccionados

mescalito2
30 de Marzo del 2005
Buscando en intnet el mismo problema q tienes, aca encontre un codigo el cual optimice para q hiciera lo q necesitamo:

<script language="JavaScript" type="text/javascript">
<!--
function showSelected()
{
var selObj = document.getElementById('selSeaShells');
var txtIndexObj = document.getElementById('txtIndex');

var selIndex = selObj.selectedIndex;
if ( selIndex == -1 ){
//txtIndexObj.value = selIndex;
window.alert("no escogio ninguno");
}
}

//-->
</script>

The HTML
<form>
<table border="1" cellpadding="10" cellspacing="0">
<tr>
<td valign="top">
<input type="button" value="Show Index" onclick="showSelected();" />
<br />
<select id="selSeaShells" size="5" multiple>
<option value="val0">sea zero</option>
<option value="val1">sea one</option>
<option value="val2">sea two</option>
<option value="val3">sea three</option>
<option value="val4">sea four</option>
</select>
</td>
<td valign="top">
<input type="text" id="txtIndex" />
selectedIndex</td>
</tr>
</table>
</form>

mescalito2
30 de Marzo del 2005
CORRIJO:

<script language="JavaScript" type="text/javascript">
<!--
function showSelected()
{
var selObj = document.formulario('selSeaShells[]');
var txtIndexObj = document.formulario('txtIndex');

var selIndex = selObj.selectedIndex;
if ( selIndex == -1 ){
txtIndexObj.value = selIndex;
window.alert("los campos de la clave no son iguales");
}
}

//-->
</script>

The HTML
<form name="formulario">
<table border="1" cellpadding="10" cellspacing="0">
<tr>
<td valign="top">
<input type="button" value="Show Index" onclick="showSelected();" />
<br />
<select id="selSeaShells[]" size="5" multiple>
<option value="val0">sea zero</option>
<option value="val1">sea one</option>
<option value="val2">sea two</option>
<option value="val3">sea three</option>
<option value="val4">sea four</option>
</select>
</td>
<td valign="top">
<input type="text" id="txtIndex" />
selectedIndex</td>
</tr>
</table>
</form>