選択した「li」にクラスを追加すると同時に、前に選択したli要素からclass:selectedを削除します。
私はそれに何時間も取り組んできましたが、まだ運がありません。他の人の質問もチェックしましたが、彼らの解決策は私にはうまくいきません。
助けてください....
<ul id='mainView' class='menu' style='float: left; clear: both;'>
<a href="/Link1"><li>Patient</li></a>
<a href="/Link2"><li>Recommendations</li></a>
</ul>
<script type="text/javascript">
$(document).ready(function () {
$('.menu ul a').on('click', function (event) {
$('.menu ul a.selected').className = '';
alert($(this).attr('id'));
$(this).attr('class') = 'selected';
});
});
// $('.menu li').on('click', function () {
// $('.menu li.selected').className = '';
// this.className = 'selected';
// });
</script>
アップデート:
liの内側を配置しましたが、liの内側ではなくliをクリックすると、Webページがリダイレクトされません。それが私が逆の方法でそれをする理由です。
更新2 選択されたliが「選択された」クラスを取得しない理由は、Webページ全体が同じナビゲーションバーを持つ新しいページにリダイレクトされるためです。したがって、問題は、新しいWebページで選択したli(前のページで選択したもの)をどのように強調表示するかです。