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