HTMLSelectElement: phương thức showPicker()
Khả dụng hạn chế
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Phương thức HTMLSelectElement.showPicker() hiển thị trình chọn của trình duyệt cho phần tử select.
Đây là cùng trình chọn vốn thường được hiển thị khi phần tử được chọn, nhưng có thể được kích hoạt từ thao tác nhấn nút hoặc tương tác khác của người dùng.
Cú pháp
showPicker()
Tham số
Không có.
Giá trị trả về
Không có (undefined).
Ngoại lệ
InvalidStateErrorDOMException-
Được ném nếu phần tử không thể sửa đổi, nghĩa là người dùng không thể thay đổi nó và/hoặc nó không thể được điền sẵn tự động.
NotAllowedErrorDOMException-
Được ném nếu không được kích hoạt rõ ràng bởi hành động của người dùng như chạm hoặc nhấp chuột (trình chọn yêu cầu Transient activation).
NotSupportedErrorDOMException-
Được ném nếu phần tử gắn với trình chọn không đang được hiển thị.
SecurityErrorDOMException-
Được ném nếu được gọi trong iframe khác nguồn gốc.
Cân nhắc bảo mật
Cần có Transient user activation. Người dùng phải tương tác với trang hoặc một phần tử giao diện để tính năng này hoạt động.
Phương thức này chỉ được phép gọi trong iframe cùng nguồn gốc; sẽ ném ngoại lệ nếu được gọi trong iframe khác nguồn gốc.
Ví dụ
>Phát hiện tính năng
Đoạn mã dưới đây cho thấy cách kiểm tra xem showPicker() có được hỗ trợ hay không:
if ("showPicker" in HTMLSelectElement.prototype) {
// showPicker() is supported.
}
Mở trình chọn
Ví dụ này cho thấy cách dùng một nút để mở trình chọn cho phần tử <select> có hai tùy chọn.
HTML
<p>
<select>
<option value="1">One</option>
<option value="2">Two</option>
</select>
<button type="button">Show Picker</button>
</p>
JavaScript
Đoạn mã lấy phần tử <button> và thêm trình nghe cho sự kiện click của nó.
Trình xử lý sự kiện lấy phần tử <select> và gọi showPicker() trên đó.
const button = document.querySelector("button");
button.addEventListener("click", (event) => {
const select = event.srcElement.previousElementSibling;
try {
select.showPicker();
} catch (error) {
window.alert(error);
}
});
Đặc tả kỹ thuật
| Thông số kỹ thuật |
|---|
| HTML> # dom-select-showpicker> |