Ver Mensaje Individual
  #9 (permalink)  
Antiguo 24/11/2014, 13:03
Daven
 
Fecha de Ingreso: diciembre-2006
Mensajes: 83
Antigüedad: 18 años
Puntos: 0
Respuesta: Evento onfocus solo una vez

he metido el codigo pero me sigue ejecutando, incluso el mensaje que solo debe de salir una vez vuelve a salir (lo deje para comprobar que hacia bien su cometido)

Código:
function nuevaLinea2(str) {
  
  var input = document.querySelector("#art1");
 
input.addEventListener("focus", function k(event){
    alert("Solo verás este mensaje una vez.");
    this.removeEventListener("focus", k);

  
   if (str=="") {
    document.getElementById("linea2").innerHTML="";
    return;
  } 
  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=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
      document.getElementById("linea2").innerHTML=xmlhttp.responseText;
    }
  }
  xmlhttp.open("GET","linea2.php?q="+str,true);
  xmlhttp.send();
  }, false);
}
esa es la funcion a la que llama el onfocus, el fin de ese codigo es que aparezca un textbox justo abajo cuando obtenga el textbox el focus. La razon de que solo quiera una ejecucion es que me borra el dato que ya tenga si el usuario vuelve a hacer focus en el textbox anterior.

muchas gracias por vuestra ayuda