2009-04-10 2 views
1

Вот что я "м пытается сделать меня гиперссылку, как это на моей странице:..гиперссылок Перезапись с Javascript/Jquery

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

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

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

} 

Любые предложения?

+0

Я не видел кто-то использует термин «гиперссылке» так долго ... –

+0

Я использую его, потому что это ретро. Очень ностальгический. Мне также нравится ссылаться на другие вещи, как на всемирную паутину. – Micah

ответ

3

Start перехватывает все события щелчка:

$(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; 
} 

«возвращение ложным;» указывает на якорь, чтобы не стрелять навигационный.

+0

Удивительный! Это именно то, что мне нужно. Как можно перенаправить их? – Micah

+0

FYI, this.href должен работать так же, как $ (this) .attr ('href') – bendewey

+0

Правда, но поскольку мы уже используем jquery. ;) – Joel

1

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

$("a").not("a[href^='http://http://www.wikipedia.com/wiki/']") 
Смежные вопросы