Pour de possibles clients qui, peu importe la raison, ne posséderaient pas Javascript :

L'idée avec un lien :

<a href="/controleur/action/param" class="op">Opération</a>
$(
    function () {
 
        $('.op').click(
            function () {
                // ...
                $.get(
                    'url',
                    {
                        // données
                    },
                    function () {
                        // requête ajax ok
                    }
                );
                return false;
            }
        );
 
    }
);

L'idée avec un formulaire :

<form action="/controleur/action" class="op">
    <input type="hidden" name="param" value="VALUE" />
    <!-- ... -->
    <input type="submit" value="Opération" /> <!-- Pour le côté esthétique, peut être remplacé par un bouton de type image -->
</form>
$(
    function () {
 
        $('.op').submit(
            function () {
                // ...
                $.post(
                    'url',
                    {
                        // données
                    },
                    function () {
                        // requête ajax ok
                    }
                );
                return false;
            }
        );
 
    }
);