Hola calavera:
La forma correcta de validar es más o menos como te puso Dorita, aunque debía estar dentro del las llaves...
Te explicaré como se hace.
La validación se hace antes del envío del formulario (en el momento de pulsar el botón submit) y la función de validación debe devolver cierto o falso (true/false) al manejador de eventos onsubmit del formulario (etiqueta form)
No es que deba ponerse return false o return true... lo más apropiado y legible es poner return campoVacio(campo)
y esa función campoVacio(x) tampoco es que tenga que tener el return true/false... vale con esa comparación cuyo resultado será el valor lógico:
function campoVacio(campo) {
return (campo.value == "");
}
Otro ejemplo sería pedir confirmación:
onsubmit="return confirm('Está seguro...')"
O sea que las funciones de validación o confirmación deben devolver cierto/false...
Para tu caso, podríamos poner:
function validar(f) {
var error = "Por favor, antes de buscar complete:\n\n";
var a = "";
if (f.buscar.value == "") {
a += " La categoria y\n los Datos a buscar";
alert(error + a);
}
return (a == "");
}
Y la validación en la etiqueta form como te puso Dorita
Saludos