Biến tất cả các hộp tổ hợp thành các trường đầu vào có thể tìm kiếm [đã đóng]


2

Trang web và ứng dụng web: Có phương pháp / addon / phần mềm nào cho phép tôi biến bất kỳ hộp tổ hợp hoặc chọn lọc nào (tức là danh sách thả xuống), trên bất kỳ trang web nào, vào trường nhập liệu có thể tìm kiếm.

Bối cảnh: Nhiều giao diện quản trị cũ hơn có danh sách thả xuống thực sự dài và không có cách nào để tìm kiếm trong đó, và nếu các yếu tố không được sắp xếp hoặc sắp xếp kém thì chúc may mắn tìm thấy bất cứ điều gì.


Như đã thảo luận trong các bình luận dưới đây, giải pháp Greasemonkey là cách và nó sẽ không bao giờ (!) Nháy mắt với Dave và ngẫu nhiên) trở nên lỗi thời cho đến khi phần mềm cấp trình duyệt và / hoặc cấp độ hệ điều hành sẽ tạo ra tất cả các kết hợp (aka select, aka thả xuống) các đầu vào có thể tìm kiếm theo tiêu chuẩn thực tế - điều này hoàn toàn có thể thực hiện được và tôi có thể đặt cược vào điều đó cuối cùng sẽ xảy ra (giống như các mật khẩu đầu vào ngày nay được xử lý đặc biệt ở cấp độ hệ điều hành và trình duyệt).
Alex

Câu trả lời:


1

Nó phụ thuộc vào tình huống, nhưng nói chung, câu trả lời là ngay cả khi bạn có thể nó sẽ không có giá trị trong khi.

Mặc dù vậy, bạn có thể, (ít nhất là trên PC để bàn), nhập khi hầu hết hộp tổ hợp được mở rộng / chọn để tìm giá trị ... Nếu bạn truy cập trang web DHL, bạn sẽ thấy danh sách thả xuống. Nhấp vào danh sách để xem các tùy chọn và trong khi đó là loại mở United K(bao gồm cả không gian) và bạn sẽ thấy nó sẽ nhảy đến mục.

Một số danh sách thả xuống sẽ không cho phép nó, chẳng hạn như trang web này ... Công nghệ có khả năng nhất được sử dụng sẽ là JavaScript, do đó, tập lệnh GreasMonkey có thể giúp tắt hành vi để nó hoạt động theo cách HTML chuẩn.

Những thứ như Greasemonkey sẽ cho phép bạn ảnh hưởng đến HTML được hiển thị và có thể chuyển đổi nó từ hộp combox sang hộp tìm kiếm, nhưng, điều về hộp tổ hợp là điều có thể dự đoán được! Chúng tôi biết những tùy chọn chúng tôi có và do đó, những gì có thể được lựa chọn. Chúng tôi thường không mã chống lại các lỗi giá trị không mong muốn vì không có khả năng xảy ra! Điều này có thể có nghĩa là bằng cách gõ những từ không tồn tại có thể dẫn đến hành vi không mong muốn.

Với các ứng dụng web, nó có thể phức tạp hơn vì các công nghệ khác có thể được sử dụng ...

Và tất nhiên, mỗi trình duyệt cũng có thể phản ứng khác nhau, vì vậy, kết luận là không thực sự có thể trả lời, nhưng câu trả lời của tôi là không, bạn không thể làm những gì bạn muốn mà không có lỗi (hoặc ít nhất, hoạt động chính xác như bạn muốn) cho mọi trang web!


Lưu ý rằng ví dụ thứ hai của bạn hoàn toàn không phải là một lựa chọn. Đó là một điều khiển hack tùy chỉnh phá vỡ tất cả các loại hướng dẫn sử dụng. Nếu lập trình viên / nhà thiết kế đó làm việc cho tôi, anh ta sẽ bị đưa vào rừng.
Brock Adams

Vâng .. đó là điểm tôi đã thực hiện. Ví dụ thứ hai cho thấy một số trang web ghi đè hành vi mặc định và vì vậy "sẽ không cho phép". Tôi đồng ý, đó là một quyết định thiết kế tồi tệ @BrockAdams.
Dave

1
Tôi hiểu quan điểm của bạn, nhưng tôi nghĩ OP khá muốn có một danh sách nhập văn bản +, vì vậy đầu vào hoạt động như một bộ lọc. Mã hóa một mô tả người dùng cung cấp một chức năng như vậy là hoàn toàn có thể.
ComFalet

1
Các bạn thảo luận tốt. Trên thực tế, jqueryui.com/autocomplete/#combobox này khớp chính xác với những gì tôi đang theo dõi (nhấp vào Combobox ở bên phải, nếu nó không được chọn cho bạn). Bạn có thể thấy rằng: a. nó sẽ không cho phép bạn chọn phần tử không tồn tại, b. nó sẽ thực hiện khớp một phần (có thể ở giữa phần tử, c. nó sử dụng combobox bên dưới (chuyển đổi nó bằng "hiển thị lựa chọn bên dưới"). Bây giờ, tôi chỉ cần tìm một tập lệnh greesemonkey hoặc tự viết nó.
Alex

1
Vì, bạn đang chạy Greasemonkey đúng cách, bạn có thể sử dụng jQuery-UI mà không gặp vấn đề gì, ngoại trừ các va chạm CSS có thể xảy ra (phiền toái nhỏ). Chỉ cần sử dụng @requirevà đảm bảo bạn không ở @grant nonechế độ và nó hoạt động tốt. ... Tôi đã tìm kiếm nhanh các kịch bản như thế này. Không tìm thấy bất cứ điều gì đáng giá. Tôi sẽ tự viết một cái nếu ai đó không đánh bại tôi.
Brock Adams
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.