Con Checkbox:    
Código:
 <HTML>
<HEAD> 
<SCRIPT language="javascript">
function desactivar() {
formulario=document.forms[0]
if(formulario.micheck.checked) 
{formulario.elboton.disabled=false}
else {formulario.elboton.disabled=true}
}
</SCRIPT>
</HEAD>
<BODY>
<form>
<input name="micheck" type="checkbox" value="checkbox" checked onClick=desactivar();>
Deselecciona la casilla para desactivar el botón<P>
<input type=button  value="Enviar" name="elboton">
</form>
</BODY>
</HTML>
   Con links e imagen:   
Código:
  
<HTML>
<HEAD>
<SCRIPT language="javascript">
<!--
function desactivar() {
   document.forms[0].elements[2].disabled=true;
}
function activar() {
   document.forms[0].elements[2].disabled=false;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="miformulario">
<table align="center">
<tr><td>Nombre:</td><td> <input type="text" name="nombre" ></td></tr>
<tr><td>Edad: </td><td><input type="text" name="edad" ></td></tr>
<tr><td align="center"><input type="button" value="Enviar"></table>
<div align="center"> <a href="#" onclick="desactivar();return true">
<img border=0 src="laimagen.gif">
<BR>
<a href="javascript:desactivar()">Desactivar</a><BR>
<a href="javascript:activar()">Activar</a></div>
</form>
</BODY>
</HTML>
  Nota: Creí que al utilizar el [ C O D E ], la palabra  j a v a s c r i p t no se me dividiría, pero igual se divide en 
java  y en 
script . No sé aun por qué es..pero en fin! asegurate de escribirla toda junta  
  
El 
[0]   aquí es la form en que estás ubicado como primera pagina. El 
[2]   es el número del elemento 
botón  contando desde 
cero . Nota que tienes los campos 
Nombre y Edad   (serían número 
0 y 1 ) El número 
2  sería el 
botón . 
Espero esto te ayude.
:)