OJO con... como acomodar las comillas y el uso que haces de ellas...
Código PHP:
echo "<input type='image' name='imageField' src='imagenes/azul.jpg' alt='objetivo cumplido' onclick='imp('" . $causa . "');'/>";
empezaste con comillas dobles... luego, (aunke no es necesarioa) tendrias que salir de ESTAS comillas dobles... para imprimir una $variable, pero no dejaste de usar comillas sencillas... mira este otro ej.
Código PHP:
echo "<input type='image' name='imageField' src='imagenes/azul.jpg' alt='objetivo cumplido' onclick='imp(\'$causa\');'/>";
aunque esta MAL, que uses comillas simples en HTML (no es el estandar) pudiste solo colocar la $variable... ya que entre comillas DOBLES siempre se evaluan....
la mejor manera seria esta (a mi parecer)
Código PHP:
echo '<input type="image" name="imageField" src="imagenes/azul.jpg" alt="objetivo cumplido" onclick="imp('. "'$causa'" . ');"/>';
NOTESE el uso variado de las comillas... al inicio, sencillas pues no hay nada que evaluar... ahora, como $causa si la tenemos que evaluar, necesitamos comillas sencillas para pasar a la funcion javascript.... entonces, metemos $causa entre comillas sencillas y dobles... hace que se evaluen y conserven las comillas sencillas sin mas contratiempos...