Nhận phần tử được gọi là hàm JavaScript

Giả sử bạn muốn truy xuất giá trị của thuộc tính id của một phần tử DOM trong tài liệu HTML của mình, chẳng hạn như , hoặc

, khi người dùng nhấp vào nó

cách tốt nhất để thực hiện điều này là gì?

Để nhận thuộc tính id của phần tử DOM khi nhấp, hãy tạo trình xử lý sự kiện bằng cách sử dụng AddEventListener[] và truy xuất id của đối tượng được nhấp bằng cách sử dụng Element.target[]

Hướng dẫn này sẽ chỉ cho bạn chính xác cách thực hiện việc này trong hai bước. tạo trình xử lý sự kiện cho các lần nhấp, sau đó áp dụng phương thức để lấy thuộc tính id của các phần tử được nhấp

Tạo Trình lắng nghe sự kiện

Trong JavaScript, một lần nhấp [hoặc, trên thiết bị màn hình cảm ứng, một lần nhấn] là một sự kiện mà bạn có thể nghe và phản ứng lại

Bạn làm điều này bằng cách tạo một trình lắng nghe sự kiện, như tên của nó, lắng nghe các tương tác của người dùng với các thành phần DOM trên giao diện người dùng và kích hoạt khi sự kiện đang được lắng nghe diễn ra

Bạn làm điều này với phương thức

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
0

Phương thức

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
1 chỉ định một chuỗi được trả về hoặc một hàm được gọi bất cứ khi nào sự kiện đang được lắng nghe xảy ra

Cú pháp của nó như sau

// Event listener method syntax
EventTarget.addEventListener[type, listener];

Với phương pháp này, bạn có thể nhắm mục tiêu tất cả các nhấp chuột, bất kể yếu tố nào

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];

Hoặc, bằng cách sử dụng phương thức

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
2 và một vòng lặp để lặp lại kết quả của nó, bạn có thể sử dụng bộ chọn CSS để nhắm mục tiêu một hoặc nhiều lần xuất hiện của một loại phần tử DOM cụ thể, chẳng hạn như liên kết hoặc liên kết có thuộc tính nhất định

// Create event listener for all link clicks
document.querySelectorAll['a'].forEach[occurence => {
  occurence.addEventListener['click', [e] => {
    console.log['A link was clicked'];
  }];
}];

// Create event listener for link clicks with a custom attribute
document.querySelectorAll['a[data-type="link-outbound"]'].forEach[occurence => {
  occurence.addEventListener['click', [e] => {
    console.log['An outbound link was clicked'];
  }];
}];

Mặc dù có nhiều cách khác để nhắm mục tiêu các phần tử DOM trong JavaScript, nhưng phương pháp

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
2 cung cấp tất cả tiện ích bạn cần cho phần lớn các trường hợp sử dụng bằng cách cho phép bạn sử dụng bộ chọn CSS

Có liên quan. Trình xử lý sự kiện cho nhiều phần tử trong JavaScript

Truy xuất thuộc tính id

Bây giờ bạn đã biết cách tạo trình xử lý sự kiện cho các lần nhấp vào các phần tử, bước tiếp theo là bạn sẽ tìm hiểu cách truy xuất thuộc tính id của các phần tử mà người dùng đã nhấp vào

Chúng ta có thể làm điều này bằng cách chuyển tham số

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
5 cho hàm, viết tắt của “sự kiện”, được gọi khi nhấp chuột

Sau đó, chúng tôi có thể sử dụng API Web

// Target all clicks on any element
document.addEventListener['click',[] =>
  {
    console.log["An element was clicked."]
  }
];
6 để truy xuất thuộc tính id của đối tượng DOM mà sự kiện được đính kèm

// Create event listener
document.addEventListener['click', [e] =>
  {
    // Retrieve id from clicked element
    let elementId = e.target.id;
    // If element has id
    if [elementId !== ''] {
        console.log[elementId];
    }
    // If element has no id
    else { 
        console.log["An element without an id was clicked."];
    }
  }
];

Nếu bạn đã mở các công cụ dành cho nhà phát triển của trình duyệt, chạy mã này trong bảng điều khiển và nhấp vào trang web này ngay bây giờ, đây là những gì bạn sẽ thấy

Ghi nhật ký id của các phần tử DOM được nhấp trong bảng điều khiển

Tóm lại là

Tôi hy vọng hướng dẫn này đã giúp. Gần đây, tôi thấy mình đang giải quyết thách thức này khi triển khai lớp dữ liệu cho mục đích phân tích trên một trong các trang web của mình. Tôi đã mất vài lần lặp lại [và vài giờ] để tìm ra giải pháp tốt nhất và tôi tin rằng đây chính là giải pháp

Nếu bạn có bất kỳ câu hỏi nào hoặc bạn muốn chia sẻ những cách khác để đạt được điều này với những độc giả còn lại của bài đăng này, hãy nhớ để lại câu trả lời bên dưới

Làm cách nào để lấy id phần tử trong hàm JavaScript?

Để lấy phần tử theo id trong javascript, chúng ta có thể sử dụng hàm sẵn có getElementById[] để lấy bất kỳ phần tử HTML nào chỉ bằng cách cung cấp . Nếu không có phần tử nào có id được cung cấp thì nó sẽ trả về null. Như chúng ta biết rằng id của một phần tử là duy nhất trong HTML.

Làm cách nào để lấy một phần tử theo tên lớp trong JavaScript?

Cú pháp như sau. var elements = document. getElementsByClassName[name]; Ở đây “name” là tên lớp mà bạn đang muốn tìm và “elements” là một biến chứa mảng các phần tử.

Làm cách nào để gọi hàm theo id trong JavaScript?

Ví dụ về phương thức gọi hàm Javascript .
hàm Emp[id,tên] {
cái này. id = id;
cái này. tên = tên;
function PermanentEmp[id,name] {
Emp. gọi [cái này, id, tên];

Làm cách nào để lấy giá trị của phần tử trong JavaScript?

Phần tử. getAttribute[] . Nếu thuộc tính đã cho không tồn tại, giá trị được trả về sẽ là null hoặc "" [chuỗi rỗng]; .

Chủ Đề