2011-02-01 12 views

Odpowiedz

9

ponieważ używasz znaczników zakotwiczenia, musisz tłumić domyślne zachowanie elementu. wywołując preventDefault()

$("a").click(function (event) { 
    event.preventDefault(); 
    //do stuff 
} 

Patrząc na aktualnej javascript, coś jak to powinno działać dla Ciebie:

$("#lpo" + o).click(function (event) { 
     event.preventDefault(); 
     if (lckPerson != null) return; 
     lckPerson = true; 
     $.get('/awesome/PersonLookup', { 
      prop: o, 
      paging: 'true' 
     }, function (d) { 
      $("#lp" + o).html(d).dialog('open'); 
      lckPerson = null; 
     }); 
    }); 
+0

Myślę, że to zbyt skomplikowane. po prostu użyj javascript: void (0) i to wszystko ... to jest powód przewijania, a to jest również bardzo niepotrzebne, aby utworzyć zdarzenie dla każdego przycisku dla kliknięcia, tylko zmienić href. –

+2

javascript: void (0) również będzie działał, ale nie znam zasięgu aplikacji. Możliwe, że href może być używany do czegoś, jeśli javascript jest wyłączony. –

5

Problemem jest to, że linki są odnoszone do „#”, który jest na stronie góry. Jeśli zmienisz to na href="javascript:void(0)", nie spowoduje to połączenia z niczym i nie będzie przewijania w górę.

+0

strona nie jest ponownie załadowana .. po prostu przechodzi na samą górę z powodu '#' w linkach –

Powiązane problemy