Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/11/2011, 07:08
emeotero
 
Fecha de Ingreso: mayo-2011
Ubicación: Santiago de Compostela
Mensajes: 126
Antigüedad: 13 años, 10 meses
Puntos: 0
no encuentro el error de este script

hola, supongo q para muchos de vosotros sera facil encontrarlo, para mi, novato como soy me esta suponiendo un stress de la leche. en mozzilla y chrome funciona pero el puñetero IE9 me da error SCRIPT5009: 'FormData' no está definido
mi pagina PHP empieza del modo:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html  xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
// funcion ajax
function enviarDatos(){
    var formulario = document.getElementById("formulario");
    var datos = new FormData(formulario);
       probadate1=document.getElementById('date1');
    proba_date1=probadate1.value;
    probadate2=document.getElementById('date2');
    proba_date2=probadate2.value;
    probachooser=document.getElementById('especies');
    // completar la seguiente linea para obtener los values seleccionados en "selector"
    var txt='';
    var i;
    var count = 0;
    for (i=0; i<probachooser.options.length; i++) {
        if (probachooser.options[i].selected) {
          if (count==0)
        txt+= "'"+probachooser.options[i].value+"'";
          else
         txt+= "#'"+probachooser.options[i].value+"'";
        }
    count++;
    }
    //hace la comparacion de las dos fechas
    compareDates('datechooser','date1','date2');
    url_proba='date1='+proba_date1+'&date2='+proba_date2+'&especies='+txt;
    xhr(url_proba);
}
var xmlhttp; 
function xhr(datos){ //funcion para crear las peticiones de XMLHttpResquest
// Generalmente sacada de páginas que usan un método para IE6 o anteriores,
// IE 7, FF, Opera, Google Chrome, u otros.
        if (window.XMLHttpRequest)
              {// code for IE7+, Firefox, Chrome, Opera, Safari
                  xmlhttp=new XMLHttpRequest();
              }
        else
              {// code for IE6, IE5
                  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
        xmlhttp.onreadystatechange = procesarRespuesta; //Ojo sin parentesis
        xmlhttp.open("POST", "consulta.php", true); 
        xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        xmlhttp.setRequestHeader("Content-length", 3);
        xmlhttp.setRequestHeader("Connection", "close");
        xmlhttp.send(datos);
        //hace la comparacion de las dos fechas
        //compareDates('datechooser','date1','date2');
        }
    function procesarRespuesta(){
        if(xmlhttp.readyState == 4) {
              if(xmlhttp.status == 200) {
            //recarga el grid al hacer la peticion. de salida esta a false para que no lo muestre.
            store.load();
            }
        }
}
</script>
...
//defino el form
<form method="post" id="formulario" action="#" onSubmit="return false;" name="datechooser">
                                    <p></p><h3><?php echo $lang['text_44']; ?></h3><p></p><br />
                                    <select id="especies" name="especies" class="select" multiple >
                                    <?php
                                        
while ($line pg_fetch_array($resultnullPGSQL_ASSOC)) {
                                        echo 
"<option value="$line["a_code"].">"$line["scientific_name"]."</option>";
                                        } 
                                    
?>
                                    </select><br /><br />
                                    <h2><?php echo $lang['text_45']; ?></h2><br>
                                    <table>
                                          <tr>
                                            <td>
                                            <h3><?php echo $lang['text_46']; ?></h3><INPUT type="text" readonly="readonly" id="date1" name="date1" size="20" onFocus="doShow('datechooser1','datechooser','date1')" value="<?php if (isset($_POST['date1'])) echo $_POST['date1'];?>"><br>
                                            <div enabled='false' id="datechooser1"></div>
                                            <h3><?php echo $lang['text_47']; ?></h3><INPUT type="text" readonly="readonly" id="date2" name="date2" size="20" onFocus="doShow('datechooser2','datechooser','date2')" value="<?php if (isset($_POST['date2'])) echo $_POST['date2'];?>"><br>
                                            <div enabled='false' id="datechooser2"></div>
                                            </td>
                                        </tr>
                                    </table>
                                    <br><br>
                                <input name="ejecutar" type="submit" value="<?php echo $lang['text_48']; ?>" onClick="enviarDatos()" />
                                </form><?php pg_close($conexion);?>
alguien me puede decir algo. gracias