Sto tentando disperatamente di far funzionare questo codice... sembra andare tutto bene, la richiesta ha successo ed entro nell'if (result == "hidden")... se faccio un alert di testo o newurl funzionano, però non mi cambiano il testo del link ne il suo href... cosa sbaglio?

codice:
        $("#tabswitch a").click(function (e) {

            e.preventDefault();

            var url = $(this).attr("href");

            var testo = $(this).text();

			

            $.ajax({

                url: $(this).attr("href"),

                    async: false,

                    success: function(result) {



                    if (result == "hidden") {

                        var testo = testo.replace("nascosta","visualizzata");

                        var newurl = url.replace("display","hide");

                        $(this).text(testo);

                        $(this).attr("href") = newurl;

                    } else {

                        var testo = testo.replace("visualizzata","nascosta");

                        var newurl = url.replace("hide","display");

                        $(this).text(testo);

                        $(this).attr("href") = newurl;

                    }

                }

            });

            return false;

        });