有很多关于如何自动完成一些输入和相关表单小部件的文章。目标是使用数据库中的数据(通过 json api)自动完成用户输入,但仅将数据库中的 id(s) 发送回服务器。有两种使用情况:
自古以来,就使用了 jquery 自动完成功能,它正在发挥作用,但由于 jquery 已成为太多人的“害群之马”,我正在寻找其他可能的解决方案。
现有解决方案:
您明白了,我正在寻找诸如“可编辑/可搜索选择并动态获取数据”之类的东西。除了上面列出的那些解决方案,这些天还有其他的吗?
答案 0 :(得分:0)
有很多选项可用于通过自动完成表单“增强”用户选择(仅仅因为它看起来更高级,并不一定会让用户更容易使用!请记住,这取决于您的用例,如果可以,请与最终用户一起测试)
首先,大多数人不知道 HTML5 原生的 <datalist>
元素,它可以在不需要任何 javascript 的情况下涵盖您的第一种情况。
它当然有限制,但迄今为止是最便宜的选择:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist
在兄弟中也有不错的报道,有待您的需求确认:
如果您正在寻找更高级的控件,确实有很多可用的控件,但这取决于您的堆栈,例如,如果您使用前端框架(如 React 或 Vue)和/或 UI 库(如 Material Design、Twitter Bootstrap) , Bulma, Bumbag,(在此处插入任何 UI 库名称...):
您可能会发现它们很方便(它们有自己的自定义选项和限制),但需要注意的是需要采用其 UI 库和/或框架本身。
也只是最后一个小说明:
<块引用>由于 jquery 已经成为太多人的“害群之马”,我正在寻找其他可能的解决方案
仅仅因为越来越多的人这样认为,并不意味着它一定适用于您自己的项目。 那些天我自己不再使用 jQuery,因为我通常使用前端框架运行,但对于后端开发人员,我认为它仍然可以提供一些好处:) 如果它适合您,那么 IMO 没有什么特别的问题。