Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Bạn có thể vui lòng cho tôi biết nếu có bất kỳ API DOM nào tìm kiếm một phần tử có tên thuộc tính và giá trị thuộc tính đã cho:

Cái gì đó như:

doc.findElementByAttribute("myAttribute", "aValue");

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Nakilon

34.3K14 Huy hiệu vàng104 Huy hiệu bạc138 Huy hiệu đồng14 gold badges104 silver badges138 bronze badges

Hỏi ngày 22 tháng 4 năm 2010 lúc 21:27Apr 22, 2010 at 21:27

Michaelmichaelmichael

103K114 Huy hiệu vàng240 Huy hiệu bạc342 Huy hiệu Đồng114 gold badges240 silver badges342 bronze badges

2

CẬP NHẬT: Trong vài năm qua, cảnh quan đã thay đổi mạnh mẽ. Bây giờ bạn có thể sử dụng một cách đáng tin cậy

$("[myAttribute=value]")
3 và
$("[myAttribute=value]")
4, xem câu trả lời của Wojtek về cách làm điều này.
In the past few years the landscape has changed drastically. You can now reliably use
$("[myAttribute=value]")
3 and
$("[myAttribute=value]")
4, see Wojtek's answer for how to do this.

Không cần phải phụ thuộc jQuery bây giờ. Nếu bạn đang sử dụng jQuery, tuyệt vời ... nếu bạn không, bạn không cần phải dựa vào chỉ để chọn các phần tử bằng các thuộc tính nữa.


Không có cách nào rất ngắn để làm điều này trong Vanilla JavaScript, nhưng có một số giải pháp có sẵn.

Bạn làm một cái gì đó như thế này, lặp qua các yếu tố và kiểm tra thuộc tính

Nếu một thư viện như jQuery là một tùy chọn, bạn có thể làm điều đó dễ dàng hơn một chút, như thế này:

$("[myAttribute=value]")

Nếu giá trị không phải là định danh CSS hợp lệ (nó có khoảng trắng hoặc dấu câu trong đó, v.v.), bạn cần báo giá xung quanh giá trị (chúng có thể là đơn hoặc gấp đôi):

$("[myAttribute='my value']")

Bạn cũng có thể thực hiện

$("[myAttribute=value]")
5,
$("[myAttribute=value]")
6,
$("[myAttribute=value]")
7, v.v ... Có một số tùy chọn cho bộ chọn thuộc tính.

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Brasofilo

25K15 Huy hiệu vàng90 Huy hiệu bạc177 Huy hiệu đồng15 gold badges90 silver badges177 bronze badges

Đã trả lời ngày 22 tháng 4 năm 2010 lúc 21:31Apr 22, 2010 at 21:31

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Nick Cravernick CraverNick Craver

616K134 Huy hiệu vàng1293 Huy hiệu bạc1152 Huy hiệu đồng134 gold badges1293 silver badges1152 bronze badges

4

Chúng ta có thể sử dụng bộ chọn thuộc tính trong DOM bằng cách sử dụng các phương thức

$("[myAttribute=value]")
8 và
$("[myAttribute=value]")
9.

cho bạn:

document.querySelector("[myAttribute='aValue']");

và bằng cách sử dụng

$("[myAttribute='my value']")
0:

document.querySelectorAll("[myAttribute='aValue']");

Trong các phương thức

$("[myAttribute='my value']")
1 và
$("[myAttribute='my value']")
0, chúng ta có thể chọn các đối tượng khi chúng ta chọn trong "CSS".

Thông tin thêm về các bộ chọn thuộc tính "CSS" trong https://developer.mozilla.org/en-us/docs/web/css/attribute_selectorors

Albert

8.0683 Huy hiệu vàng46 Huy hiệu bạc62 Huy hiệu Đồng3 gold badges46 silver badges62 bronze badges

Đã trả lời ngày 21 tháng 1 năm 2018 lúc 9:01Jan 21, 2018 at 9:01

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

NAVEEN PANTRANAVEEN PANTRANaveen Pantra

1.1281 Huy hiệu vàng7 Huy hiệu bạc 6 Huy hiệu đồng1 gold badge7 silver badges6 bronze badges

1

FindByAttributeValue("Attribute-Name", "Attribute-Value");   

P.S. Nếu bạn biết loại phần tử chính xác, bạn sẽ thêm tham số thứ 3 (tức là .________ 23):

FindByAttributeValue("Attribute-Name", "Attribute-Value", "div");   

Nhưng lúc đầu, xác định chức năng này:

function FindByAttributeValue(attribute, value, element_type)    {
  element_type = element_type || "*";
  var All = document.getElementsByTagName(element_type);
  for (var i = 0; i < All.length; i++)       {
    if (All[i].getAttribute(attribute) == value) { return All[i]; }
  }
}

P.S. Cập nhật cho mỗi khuyến nghị bình luận.

Đã trả lời ngày 24 tháng 1 năm 2014 lúc 10:15Jan 24, 2014 at 10:15

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

4

Sử dụng bộ chọn truy vấn, ví dụ:

document.querySelectorAll(' input[name], [id|=view], [class~=button] ')

$("[myAttribute='my value']")
4 Đầu vào các thành phần với thuộc tính
$("[myAttribute='my value']")
5.

$("[myAttribute='my value']")
6 Các yếu tố có ID bắt đầu bằng
$("[myAttribute='my value']")
7.

$("[myAttribute='my value']")
8 Các yếu tố với lớp
$("[myAttribute='my value']")
9.

Đã trả lời ngày 11 tháng 6 năm 2020 lúc 21:05Jun 11, 2020 at 21:05

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Daniel de Leóndaniel de LeónDaniel De León

12.8k5 Huy hiệu vàng83 Huy hiệu bạc70 Huy hiệu Đồng5 gold badges83 silver badges70 bronze badges

1

Đây là cách bạn có thể chọn bằng cách sử dụng

$("[myAttribute=value]")
3:

document.querySelector("tagName[attributeName='attributeValue']")

Đã trả lời ngày 16 tháng 9 năm 2021 lúc 18:36Sep 16, 2021 at 18:36

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

SiddharthsiddharthSiddharth

4645 Huy hiệu bạc12 Huy hiệu Đồng5 silver badges12 bronze badges

Dưới đây là một ví dụ, cách tìm kiếm hình ảnh trong tài liệu của thuộc tính SRC:

$("[myAttribute=value]")
0

Đã trả lời ngày 18 tháng 12 năm 2016 lúc 8:59Dec 18, 2016 at 8:59

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

Boubkhaledboubkhaledboubkhaled

3795 Huy hiệu bạc6 Huy hiệu Đồng5 silver badges6 bronze badges

Sửa đổi cho câu trả lời của Daniel de León, có thể tìm kiếm với

document.querySelector("[myAttribute='aValue']");
1 - Bộ lọc các yếu tố trong đó ID (hoặc bất kỳ ATT nào khác) bắt đầu bằng từ khóa
document.querySelector("[myAttribute='aValue']");
2
It's possible to search with
document.querySelector("[myAttribute='aValue']");
1 - filters Elements where id (or any other attr) starts with
document.querySelector("[myAttribute='aValue']");
2 keyword

$("[myAttribute=value]")
1

Đã trả lời ngày 19 tháng 4 lúc 14:30Apr 19 at 14:30

Hướng dẫn get element by attribute javascript - lấy phần tử theo thuộc tính javascript

$("[myAttribute=value]")
2

Đây là một hàm được sử dụng TU để chọn một thẻ cụ thể với giá trị thuộc tính cụ thể. Các tham số được truyền là ID thẻ, sau đó tên thẻ - bên trong ID thẻ đó và thuộc tính và thứ tư là giá trị thuộc tính. Hàm này sẽ trả về số lượng các phần tử được tìm thấy với thuộc tính được chỉ định và giá trị của nó. Bạn có thể sửa đổi nó theo bạn.

Đã trả lời ngày 25 tháng 12 năm 2021 lúc 12:18Dec 25, 2021 at 12:18

1

Làm thế nào để bạn có được một phần tử dựa trên thuộc tính?

Sử dụng phương thức QuerySelector () để có phần tử DOM theo thuộc tính, ví dụ: tài liệu. Truy vấnSelector ('[data-id = "first"]'). Phương thức QuerySelector sẽ trả về phần tử đầu tiên trong tài liệu phù hợp với thuộc tính được chỉ định., e.g. document. querySelector('[data-id="first"]') . The querySelector method will return the first element in the document that matches the specified attribute.

Bạn có thể nhận được phần tử theo tên trong JavaScript không?

GetElsementsByName () chấp nhận một tên là giá trị của thuộc tính tên của các phần tử và trả về một gật đầu trực tiếp của các phần tử.Bộ sưu tập trở lại của các yếu tố là trực tiếp.Điều đó có nghĩa là các phần tử trả về được tự động cập nhật khi các thành phần có cùng tên được chèn và/hoặc xóa khỏi tài liệu.. The return collection of elements is live. It means that the return elements are automatically updated when elements with the same name are inserted and/or removed from the document.

Làm thế nào để tôi tìm thấy các thuộc tính dữ liệu?

Để nhận thuộc tính dữ liệu thông qua đối tượng DataSet, hãy lấy thuộc tính theo một phần của tên thuộc tính sau dữ liệu- (Lưu ý rằng các dấu gạch ngang được chuyển đổi thành Camelcase).Mỗi thuộc tính là một chuỗi và có thể được đọc và viết.get the property by the part of the attribute name after data- (note that dashes are converted to camelCase). Each property is a string and can be read and written.

Làm thế nào để bạn sử dụng getattribut?

JavaScript getAttribution () Ví dụ về cách thức hoạt động: Đầu tiên, chọn phần tử liên kết với ID JS bằng phương thức QuerySelector ().Thứ hai, lấy thuộc tính đích của liên kết bằng cách gọi getAttribution () của phần tử liên kết đã chọn.Thứ ba, hiển thị giá trị của mục tiêu trên cửa sổ bảng điều khiển.First, select the link element with the id js using the querySelector() method. Second, get the target attribute of the link by calling the getAttribute() of the selected link element. Third, show the value of the target on the Console window.