Una consulta tengo un formulario de consulta en http://banquita.site40.net/busqueda.html
el efectivamente realiza la búsqueda en una bases de datos por ejemplo al intoducir 1
el devuelve Nombre: VENTAS CONTADO, como puedo hacer para ese valor me lo devuelva en el div resultado en el primer formulario y no me cambia de pagina de la html a la php.
el codigo ajax es
var conexion2;
function buscar(cedula) {
if(window.XMLHttpconexion2uest) {
conexion2=crearXMLHttpRequest();
}
else if(window.ActiveXObject) {
conexion2=crearXMLHttpRequest();
}
var url = "buscarpersonas.php?cedula="+cedula;
conexion2.open("GET", url, true);
conexion2.onreadystatechange = procesarEventos();
conexion2.send(null);
function procesarEventos()
{
var resul = document.getElementById("resultado");
if(conexion2.readyState == 4)
{
resul.innerHTML = conexion2.responseText;
}
else
{
resul.innerHTML= '<img src="engranaje.GIF"> <br/>Su transaccion esta siendo procesada espere por favor...';
}
}
El formulario de la web no lo tienes bien. Tienes que evitar que el submit se ejecute y dar valor id al campo de texto
<form onsubmit="buscar(document.getElementById('cedula').value); return false;">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
A parte de esto, si miras el archivo http://banquita.site40.net/funciones2.js podrás ver que la función buscar no acepta argumentos
function buscar() { ...
Tienes que ponerla como en el código del post
function buscar(cedula) { ...
ya lo de la funcion esta corregido pero si cambio el formulario no hace nada mas que recargar la misma pagina y no dar un resultado.
o sera mejor crear un json sobre ese resultado??
Mod: No hacer doble post.
Pero tú has leído lo que te he dicho sobre el form?
Cita de: BlackM4ster en 13 Marzo 2015, 08:39 AM
El formulario de la web no lo tienes bien. Tienes que evitar que el submit se ejecute y dar valor id al campo de texto
<form onsubmit="buscar(document.getElementById('cedula').value); return false;">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
por no decir que el código javascript está mal formado: no cierras la función buscar
ya lo corregi y al dar enter a recarga la pagina
http://banquita.site40.net/busqueda.html?
sin dar ningun resultado
su usas jquery para que haces un "crearXMLHttpRequest"? :s jquery maneja todo eso de forma transparente y simple
esto
<form onsubmit="buscar(document.getElementById('cedula').value); return false;">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
no va a funcionar... debe ser
<form onsubmit="buscar(document.getElementById('cedula').value);">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
y buscar
function buscar(cedula) {
//...todo el codigo...
return false;
}
Cita de: engel lex en 13 Marzo 2015, 22:53 PM
su usas jquery para que haces un "crearXMLHttpRequest"? :s jquery maneja todo eso de forma transparente y simple
esto
<form onsubmit="buscar(document.getElementById('cedula').value); return false;">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
no va a funcionar... debe ser
<form onsubmit="buscar(document.getElementById('cedula').value);">
<input type="text" id="cedula">
<input type="submit" value="buscar">
</form>
y buscar
function buscar(cedula) {
//...todo el codigo...
return false;
}
Solo un cambio mas:
<form onsubmit="buscar(document.getElementById('cedula').value);">
por
<form onsubmit="return buscar(document.getElementById('cedula').value);">
return buscar(document.getElementById('cedula').value);
y
buscar(document.getElementById('cedula').value); return false;
Son lo mismo... ambos retornan false :silbar: :silbar:
pero de la segunda forma por lo menos en chrome no lo interpreta
Me funciona en Firefox (37.02) y Chromium (40.0) de las dos maneras, pero me parece que habia una navegador (o quizas una version de navegador) en el que no funcionaba. Me parece que era Internet Explorer.