Ya, pero entonces la función calendar no me sirve para otros formularios, por ejemplo el de la introducción de datos.
He probado hacer una llamada a la función buscar() en el evento onclick pero no funciona bien: ejecuta el filtro cuando haces click por segunda vez.
Código:
<input type='text' onchange='buscar();' id='fecha'>
<img src='datepicker.png' onclick='calendar('fecha');buscar()'></img>