le estás pasando una variable llamada "valor" a la función, no el numero..
revisa lo que está en rojo (el código está simplificado)
Cita: <script type="text/javascript" language="javascript">
function enviar4(valor) {
if(valor==1){
window.alert("Primero hay que seleccionar algún idioma.");
}
if(valor==2){
window.alert("Primero hay que seleccionar alguna asignatura.");
}
if(valor==3){
window.alert("Primero hay que seleccionar alguna unidad.");
}
if(valor==4){
document.getElementById('formcriterio4').submit();
}
}
</SCRIPT>
<a href="javascript:enviar4(1);"><img src="imagenes/guardar1.jpg" border="0"></a>
Espero te sirva,
Saludos!