Si hace el "disable" lo que pasa es que envia la informacion y se vuelve a refrescar la pagina bien rapido. Prueba de esta forma, sin ingresar un dato en el campo y vas a ver.
Código HTML:
Ver original<script type="text/javascript"> function disableButton(){
if(document.form1.total_de_cajas.value==""){
document.form1.AgregarCajas.disabled=true;
return false;
}
}
<form name="form1" method="post" action="index.html" onsubmit="return disableButton()"> <input name="total_de_cajas" type="text" /> <input name="AgregarCajas" type="submit" value="Agregar Cajas">