Pracuję nad projektem wykorzystującym Angularjs i Twitter Bootstrap.href powoduje niezamierzone przeładowanie strony za pomocą Angularjs i Twitter Bootstrap
Bootstrap korzysta #, aby przełączać się składniki, takie jak popover, modalnej itp na przykład:
<a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>
<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Modal header</h3>
</div>
<div class="modal-body">
<p>One fine body…</p>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary">Save changes</button>
</div>
</div>
Problem jest po kliknięciu na przycisk z takim atrybutem href, powoduje pełne przeładowania strony, co oznacza, wszystko na aktualnej stronie zostało utracone. Czy istnieje sposób, aby temu zapobiec?
niektóre extra info:
kiedy najechaniu na przycisk, adres URL jest dziwne. na przykład url mojego Obecna strona jest
localhost:8080/#/account
przycisk za href jest
href="#myModal"
spodziewam się zobaczyć url
localhost:8080/#/account#myModal
Jednak to, co widzę, to
localhost:8080/#myModal
Nie jestem pewien, czy to się odnosi d do mojego problemu.
Z góry dzięki!
EDIT 1
widziałem innego stanowiska, że Stewie rozmawialiśmy. Wyjaśnia html5mode i hashbang w angularjs, ale tak naprawdę nie rozwiązuje mojego problemu.
Próbowałem oddanie html5mode i nadal ładuje się strona po kliknięciu na przycisk
czemu stosując '' gdy że ma jasną i określoną rolę semantyczną wewnętrznie przechodząc na stronę? To nie jest link do zasobu, dlaczego nie po prostu użyć ''? –
możliwy duplikat lokalizacji [$ location/switching między html5 a trybem hashbang/przepisywania linków] (http://stackoverflow.com/questions/16677528/location-switching-between-html5-and-hashbang-mode-link-rewriting) – Stewie
Czy spojrzałeś na opcje 'data-target'? W ten sposób możesz pozwolić kątowi wybrać href. – Sherbrow