Hola ya logre lo que queria. Pero no de la forma convencional (enviando todo el arreglo de elementos en la lista) tuve que hacer otra variable invisible que almacene elemento a elemento y los separe x comas (,) incluse tuve que modificar la funcion para borrar elementos de la lista.
Mi script de PHP lee esta variable y realiza un explode teniendo en cuenta las comas para almacenarlo en un arreglo y hacer lo que desee con los datos.
Adjunto ambos codigos.
Códigos en JS
Código:
/* Agregamos un elemento insertado en una lista
param txt = referencia al campo de texto que vamos a insertar.
lst = referencia a la lista donde vamos a insertar los elementos
ocu = referencia a la variable oculta donde realmente guardaremos los datos
*/
function agregaMail(txt,lst,ocu){
/*No anexo el metodo validaMail pues solo valida los e-mails devuelve true si es correcto*/
if( validaMail(txt) ){
var nCorreo = txt.value;
var canti = lst.length
// Agregamos a la lista
lst[canti] = new Option(nCorreo,nCorreo,"defaultSelected","selected");
txt.value = "";
//Agregamos un valor al campo oculto
var tempi = ocu.value;
//Si es el primer valor
if(tempi.length < 3) {
tempi = nCorreo;
} else {
tempi += ","+nCorreo;
}
ocu.value = tempi;
}
}
/* Funcion para eliminar
lst = referencia a la lista donde vamos a eliminar el elemento seleccionado
ocu = referencia al campo oculto que recibira el formulario
*/
function borrarCorreo(lst,ocu) {
if (lst.selectedIndex >= 0) {
lst.options[lst.selectedIndex] = null;
lst.selectedIndex=0;
var total = "";
for(i=0; i<lst.length;i++){
var actual = lst.options[i].value;
if( total.length < 3 ){
total = actual;
} else {
total += ","+actual;
}
}
ocu.value = total;
} else {
alert("No hay elementos seleccionados.");
}
}
y bueno si desean... el PHP que recibe empieza asi.
Código:
$amigos = explode(",",$_POST["correos"]);
$correos = "";
for($i=0; $i < count($amigos);$i++){
//Verificamos el valor que ha recibido
echo "Es ".$amigos[$i]."<br>";
}
Gracias por la ayuda.
Cuando publiquen la web mando la direccion
Gracias tuanit