2010-08-12 135 views
5

我有一些ID爲「div1」,「div2」...「divx」的DIV。我想對他們進行操作。有什麼方法可以獲得元素ID。包含「div」。任何其他想法?使用jQuery獲取HTML元素

回答

11

可以使用starts with selector

$("div[id^='div']") 

以上將抓住這有一個id屬性以字母div開始的所有div。

jsFiddle example that makes all divs with id div... invisible.


下面是如何,如果你想匹配div後跟一個數字,但並不div其次是別的東西處理棘手的情況。所以div1會匹配,但divx不會。

在這種情況下,我們使用filter()一個函數。該函數應該在我們想要匹配時返回true,而在我們不需要時返回false。 match()和正則表達式是爲這個偉大的(你可以用[0-9]來表示一個正則表達式的數字的簡單[\d]):

$("div").filter(function() { 
    return $(this).attr("id").match(/^div[\d]+$/) 
}) 

attr()返回指定屬性的值,在這種情況下id

jsFiddle example that makes all div followed by number disappear, but not div followed by other things.

+1

彼得的出色答卷的是完全正確的,*最好*要做的事情是添加的「mydivs」一類或什麼(在HTML中)給所有這些div,所以你可以按類選擇它們。這就是班級存在的原因,以便像項目一樣分組。 :) – 2010-08-12 06:29:22

7

你可以使用這個(我還沒有測試,雖然它):

jQuery("div[id^='div']") 

這會得到有id開始以 「格」 的所有div元素。

如果您想讓所有有含 「格」 的id,那麼你可以使用這個div元素:

jQuery("div[id*='div']") 
2

使用的ID喜歡DIV1,DIV2,DIV3是一種不好的做法。這就像命名你的類「black-bold-12px」,然後將這些樣式分配給該類。它忽略了語義上的觀點。

這樣做的正確方法是使用所有這些類。

元素可以是多個類的,用一個空格作爲分隔符:

<div class="something usethis">...</div> 
<div class="usethis something_else">...</div> 
<div class="usethis">...</div> 
<div class="something anotherclass usethis" id="someId">...</div> 

<script> 
    $(".usethis").html("New contents for all of them!"); 
</script> 
+2

其他答案回答這個問題,但這是正確的答案 – 2010-08-12 04:48:01

+2

如果你有一系列的帖子,像'post-1','post-23'等ID是唯一的通用帖子標識符似乎是完全合法的,語義信息豐富......但是,如果可能的話,與經過深思熟慮的課程合作肯定更容易。----但是,對於語義良好的頁面,外部Javascript優於使用

  • 11. 獲取jQuery中元素的HTML
  • 12. 使用AngularJS獲取HTML元素的ID
  • 13. 使用JSP獲取HTML元素
  • 14. 使用javascript獲取HTML元素的值
  • 15. 使用LXML獲取所有HTML元素
  • 16. 無法使用createDocumentFromUrl獲取html元素
  • 17. 使用jQuery元素訪問html元素?
  • 18. 如何獲取jQuery使用的HTML元素的對象引用?
  • 19. 獲取html元素ID使用jQuery獲取ajax提取的內容
  • 20. 使用jQuery元素添加刪除元素使用html元素
  • 21. 使用jquery創建html元素,我如何獲取元素的寬度?
  • 22. 使用jquery獲取多個動態html元素值
  • 23. 使用jquery獲取所有html元素對象
  • 24. 如何使用jQuery從字符串獲取HTML元素
  • 25. 使用jQuery從HTML元素獲取標記
  • 26. 如何使用JQuery獲取HTML元素的屬性?
  • 27. 如何使用jQuery獲取HTML元素旁邊的純文本?
  • 28. 使用jQuery獲取元素的HTML標籤屬性
  • 29. 如何使用內聯HTML onclick和jQuery獲取點擊元素?
  • 30. 使用jQuery從HTML元素名稱獲取密鑰