2011-03-07 71 views
1

好吧,所以我有一個mysql數據庫用戶名列表。但是,我需要從數據庫的ID,所以我想這樣的事情,jQuery的ID從列表項?

<li id='43'>Monica</li> 
<li id='47'>Henrik</li> 
<li id='77'>Eric</li> 

但我怎麼能從列表中獲得ID?

+0

是你的問題「如何從數據庫中獲取'li'元素的id?或「如何獲得」李「元素的ID?」 – 2011-03-07 15:04:14

+0

[ID和名稱標記必須以字母(A-Za-z)開頭,後面可以跟隨任意數量的字母,數字(0-9),連字符(「 - 」),下劃線(「_」),冒號(「:」)和句點(「。」)。](http://www.w3。org/TR/html4/types.html#h-6.2) – epascarello 2011-03-07 15:04:49

+0

不要用數字開始一個id。這裏是選擇ID的規則:http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html/79022#79022 – 2011-03-07 15:04:55

回答

0
$('li').each(function(){ 
    alert($(this).attr('id')); 
}); 
0

嘗試通過你想讀的ID列表項的索引項

$("li").eq(0).attr("id") 

替代0。

6

我會使用類似以下內容:

<ul id="items-list"> 
    <li id='member-43'>Monica</li> 
    <li id='member-47'>Henrik</li> 
    <li id='member-77'>Eric</li> 
</ul> 

則:

$('#items-list li').each(function() { 
    var id = $(this).attr('id').split('-')[1]; 
}); 

有人指出,在as of HTML5它是完全有效的啓動id屬性與一些評論,但我仍然會優先考慮這種方法,特別是如果在不同數據庫表的頁面上有多個列表(id仍然需要唯一)。 43id對任何人都沒有意義,但member-43更清晰。

0

你真的想用這個ID做點什麼嗎?你給我們的數據太少了。 如果要管理用戶,你需要這樣的事:

<ul id="deleteUsers"> 
    <li id='user43'><a href="deleteuser.php?id=43">Monica</a></li> 
    <li id='user47'><a href="deleteuser.php?id=47">Henrik</a></li> 
    <li id='user77'><a href="deleteuser.php?id=77">Eric</a></li> 
</ul> 

,比jQuery的覆蓋單擊事件。 roryf給了你很好的例子。

1

對的列表元素click事件的正常的javascript,如下圖所示:

<html> 
    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
    <script type="text/javascript"> 
     linkClicked = function (index) { 
     alert($('#myList li').get(index).id); 
     } 
    </script> 
    </head> 
    <body> 
    <ul id='myList'> 
     <li id='43' onclick="linkClicked($(this).index())">Monica</li> 
     <li id='47' onclick="linkClicked($(this).index())">Henrik</li> 
     <li id='77' onclick="linkClicked($(this).index())">Eric</li> 
    </ul> 
    </body> 
</html> 

這爲我工作!

0

你可以用相同的名字添加一個類的所有列表中的項目

<li class="test" id='43'>Monica</li> 
<li class="test" id='47'>Henrik</li> 
<li class="test" id='77'>Eric</li> 

然後,你可以在

$(".test").click(function(){ 
$(this).attr("id"); 
}); 
0

使用您可以使用HTML5數據屬性,以便保持ID數據。

<li data-empid="A123" data-salary="120" class="datalist">Monica</li> 
<li data-empid="A124" data-salary="121" class="datalist">Monica</li> 

訪問數據的數據屬性jQuery的 - 如果你需要在某個地方靜態地定義ID,因此不是最佳解決方案,您可以檢查下面的代碼在ID保存數據可能給問題

<script type="text/javascript"> 
$("li .datalist").click(function() {  
     $(this).data("salary") 
    }); 
</script>