Web サイトのナビゲーション ツリーを作成しようとしていますが、動的な配置ができませんでした。問題は次のとおりです。内部 LI がクリックされるたびに内部 UL を開きたいのですが、クリックされた内部 UL のインデックスを取得できますが、そのインデックス変数をグローバルに使用することはできません。
- リンクをクリックするたびにページがリロードされるので、Cookie を使用した解決策はありますか??
ここにhtmlがあります:
<ul id="menu">
<li> <a href="#">Order Management</a>
<ul id="test">
<li><a href="#" class="even">orders</a></li>
<li><a href="#" class="odd">Search Orders</a></li>
<li><a href="#" class="even">Orderdetail</a></li>
</ul>
</li>
<li> <a href="#">Discount Management</a>
<ul>
<li><a href="#" class="even">Subject</a></li>
<li><a href="#" class="odd">Category</a></li>
<li><a href="#" class="even">Publisher</a></li>
<li><a href="#" class="odd">Author</a></li>
<li><a href="#" class="even">Particular Book</a></li>
</ul>
</li>
<li> <a href="#">Upload File</a>
<ul>
<li><a href="#" class="even">Upload excel file</a></li>
</ul>
</li>
<li> <a href="#">Reports</a>
<ul>
<li><a href="#" class="even">data over view</a></li>
<li><a href="#" class="odd">Out Of Stock Product</a></li>
<li><a href="#" class="even">Invoice Report</a></li>
<li><a href="#" class="odd">SerachInvoicDispacthed</a></li>
</ul>
</li>
<li> <a href="#">Store Management</a>
<ul>
<li><a href="#" class="even">Currency</a></li>
<li><a href="#" class="odd">Add Country</a></li>
</ul>
</li>
</ul>
Jsは次のとおりです。
function initMenu() {
$('#menu ul').hide();
$('#menu li a').click(
function() {
var checkElement = $(this).next();
if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
return false;
}
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#menu ul:visible').slideUp('normal');
checkElement.slideDown('normal');
return false;
}
}
);
var myIndex = 0;
var items = $('#menu ul').click(function() {
//e.preventDefault();
myIndex = items.index(this);
console.log('the index is:'+myIndex);
//here i got index in var myIndex
}
);
//but i can not access myIndex here , it keeps returning zero
$('#menu ul:eq('+myIndex+')').show("slow");
}
$(document).ready(function() {initMenu();});
この質問のために、私のアカウントはすでにブロックされています。ここにフィドルがありますhttp://jsfiddle.net/Ekn2V/1/ 実際のリンクはありませんが、実際のリンクを使用すると、 struts.xml で定義されているようにページがリロードされるため、ページはここで js によって発生したすべてをリロードします見過ごされている場合は、Cookie またはその関連ソリューションのようなものを教えてください。私は Java SE 開発の経験があり、Web 開発の初心者です。助けていただければ幸いです、ありがとう。