Перезапись гиперссылки с помощью Javascript / Jquery - PullRequest
1 голос
/ 10 апреля 2009

Вот что я пытаюсь сделать. У меня есть гиперссылка на эту страницу:

<a href="http://www.wikipedia.com/wiki/Whatever_Page_Here">Whatever Page Here</a>

Когда пользователь нажимает на ссылку, я хочу получить этот щелчок. Если это ссылка, я не хочу, чтобы они нажимали (например, что-то, что не соответствует формату http://www.wikipedia.com/wiki/xxxxx) Я хочу открыть окно сообщения. В противном случае я хочу направить их через мой Mvc Controller. :

//Category is the "Whatever_Page_Here" portion of the Url that was clicked.
public ActionResult ContinuePuzzle(string category)
{

}

Есть предложения?

Ответы [ 2 ]

3 голосов
/ 10 апреля 2009

Начните с перехвата всех событий щелчка:

$(function() {
    $("a").click(ClickInterceptor);
});

function ClickInterceptor(e)
{
    // code to display popup or direct to a different page
    if (redirect)
    {
        var href = $(this).attr("href").split("/");
        location.href = "http://mydomain.com/controller/" + href[href.length - 1];
    }

    return false;
}

«Вернуть ложь»; говорит якору не стрелять по навигационной системе.

1 голос
/ 11 апреля 2009

Если вы хотите выбрать все теги a, которые не начинаются с "http://http://www.wikipedia.com/wiki/", вы должны использовать:

$("a").not("a[href^='http://http://www.wikipedia.com/wiki/']")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...