A los elementos button no tienes que ponerles el atributo 'type="button"'.
El código, parece que funciona, pero a mi no me gusta nada que se meta código javascript dentro de los elementos HTML, como por ejemplo haces con el atributo "onclick" (al igual que tampoco nadie recomienda que se meta estilos CSS en ellos).
Si tu código HTML crece, y/o necesitas modificar códigos en el futuro, si sigues así será una locura hacerlo.
Yo lo cambiaría por:
http://jsfiddle.net/5WdvA/
Código Javascript
:
Ver originalwindow.onload=function(){
var sumar=function(cantidad,txt){
txt.value=(!isNaN(txt.value) && txt.value!="")?parseInt(txt.value)+cantidad:0;
}
var SUMADOR1={
btnResta: document.getElementById("btn1"),
btnSuma: document.getElementById("btn2"),
txt: document.getElementById("txt")
};
SUMADOR1.btnResta.onclick=function(){ sumar(-1,SUMADOR1.txt); };
SUMADOR1.btnSuma.onclick=function(){ sumar(1,SUMADOR1.txt); };
}