Si me funciono desde el primer codigo que me enviaste realice dos cosas que por logica no se podia primero ingrese un id que no existia y otra el evento onchange funciona solo si sale de foco del input, ya quedo como busque hasta que postie esto weno dejo el codigo que en realidad es igual al que puso gildus. A se me olvidaba el evento que ocupe para la consulta fue el onKeyUp funciona como el enter.
Código PHP:
Ver original<?php
//if (isset($_POST['txtId_matriz'])){
$bd_host = "BEREESSEC-PC\SQLEXPRESS";
$bd_usuario = "sa";
$bd_password = "123456";
$bd_base = "SERCAP";
//consulta todos los empleados
$id=$_POST['txtId_matriz'];
$sql=mssql_query("SELECT * FROM TMatrizAdoctrinamientoEncabezado where Id_matriz='$id'",$con); $elaboro=$row['Elaboro'];
}
?>
<html>
<form id='forma' method="post" action="formulario.php">
<table>
<tr><td><input type="text" name="txtId_matriz" onKeyUp="if(this.value!='') document.getElementById('forma').submit();" value="<?php echo $id; ?>"/></td></tr>
<tr><td><input type="text" name="Revision" value="
<?php if(isset($elaboro)) echo $elaboro; ?>"/></td></tr>
</table>
</form>
</html>