Hola de nuevo.
si el input esta vacio de entrada y quieres que no aparezca el boton, decláralo de entrada como hidden.
En cuanto a que no te funciona en tu código es porque te olvidaste cerrar la comilla del evento.
Te dejo tu código con eso corregido.
Código PHP:
<form name=form1 ACTION='<?php $PHP_SELF ?>' METHOD='POST'>
Codigo: <input name=codigo type="text" value='<?php echo $codigo?>' >
Descripcion: <input name=descripcion type="text" value='<?php echo $descripcion?>' onkeyup ='FuncionTest(this);' >
<input name=id type="hidden" value='<?php echo $id?>'>
<input type="hidden" name="quehacer" >
<input type="hidden" name="boton_agregar" value="Agregar" onclick="document.form1.quehacer.value='agregar'; if ((document.form1.codigo.value=='') || (document.form1.descripcion.value=='')) {alert('Por favor complete todos los campos obligatorios !!');return false}; ">
<input type="submit" name="boton_borrar" value="Borrar" onclick="if ((document.form1.codigo.value=='') || (document.form1.descripcion.value=='')) {alert('No selecciono ningun registro para borrar !!');return false};
if (confirm('Esta seguro que quiere eliminar <?php echo"$codigo ", "$descripcion" ?> ?')) {
document.form1.quehacer.value='borrar';} else {document.form1.codigo.value='';
document.form1.descripcion.value='';document.form1 .submit()}">
<input type="submit" name="boton_guardar"value="Guardar" onclick="if ((document.form1.codigo.value=='') || (document.form1.descripcion.value=='')) {alert('No selecciono ningun registro para guardar la modificacion !!');return false};
if (confirm('Esta seguro que quiere modificar <?php echo"$codigo ", "$descripcion" ?> ?')) {
document.form1.quehacer.value='modificar';}else {document.form1.codigo.value='';
document.form1.descripcion.value='';document.form1 .submit()}">
<?php // esto anterior pregunta en los botones de borrar y modificar si realmente quiere realizar la accion, sino que borre los campos y no haga nada?>
</form>
<script>
function FuncionTest(control){
if (control.value!=='') {
document.form1.boton_agregar.type='submit';
} else {
document.form1.boton_agregar.type='hidden';
}
}
</script>
Saludos.