9

我有一项任务将菜单设置为选中状态。为此,我使用动态 ID。所以我想根据选择增加它

我的代码是

<div class="menuHeader ui-corner-top" id="menu"+ i>
    <span><a href="#" onclick="Home()">Home</a></span>
</div>
<div class="menuHeader ui-corner-top" id="menu"+ i>
    <span><a href="#" onclick="NewTransaction()">New Transaction</a></span>
</div>
<div class="menuHeader ui-corner-top" id="menu"+ i>
    <span><a href="#" onclick="Portfolio()">Portfolio</a></span>
</div>

javascript是

$(document).ready(function () {
             alert(document.URL);
             var list = $("#menu");
             for (var i = 1; i <= list.length; i++) {
                 list[i].innerHTML = i;
             }
             var str = document.URL.toLowerCase().indexOf("portfolio/index");
             alert(str);
             if (str >= 0) {
                 $('#menu').addClass("menuHeaderActive");
             }
         });

我怎样才能做到这一点?

4

3 回答 3

15
var i=0;
$('.menuHeader').each(function(){
    i++;
    var newID='menu'+i;
    $(this).attr('id',newID);
    $(this).val(i);
});
于 2013-04-01T14:26:47.270 回答
1

这是使用 Jquery 的方法

val elementList = $(".menu");
for (var i = 1; i <= list.length; i++) {
    elementList[i].attr("id", "menu" + i);
}
于 2013-04-01T14:31:23.530 回答
0

只需使用类名而不是 id,您就可以重用刚刚添加的代码,但是以这种方式。

 var list = $(".menu");

一个建议,不要用javascript突出显示项目菜单,在服务器端做,你可以直接在LI的HTML中添加“激活”类。

于 2013-04-01T14:24:37.683 回答