make input buttons have optional hidden submit button (and emit on change)