jQuery Select2远程数据加载:显示选项而不是占位符
jQuery Select2 with remote data loading: display options instead of placeholder
我使用Select2作为自动建议。这意味着,我通过ajax从远程源获取选项。这是完美的。
现在,客户希望在开始输入之前加载所有选项。这有点违背了建议的目的,但如果他想那样做,他就会得到它。
无论如何,我需要在用户开始输入之前显示前50或100个元素,在第三个输入字符之后,Select2输入应该再次获取选项。
我尝试用选项值预填充选择(例如"aa","bb"answers"cc"),但它只显示占位符。是否有可能在用户单击选择时立即发送请求?这也是有可能的,因为远程源可以发回前50个结果。如果有人能指引我正确的方向,我会很感激:)
如果有人遇到同样的问题,一个快速的解决方案:
-
设置"minimumInputLength"为0。这样,一旦用户打开Select2输入元素,就会发送请求。搜索参数当然是一个空字符串
-
在"processResults"函数中添加允许分页的逻辑。返回的对象需要一个带有布尔成员"loadMore"的"分页"属性。你可以在这里阅读更多内容:https://stackoverflow.com/a/29022107/430997这样你就启用了无限滚动。当然你也需要在服务器端支持分页结果
-
你可以选择从不同的位置获取资源。ajax选项的"url"参数可以是一个函数。如果您想根据字符数调用不同的端点(主要是检查,如果字符数为0),您可以在url函数中检查它并返回适当的端点。
这只是一个变通方法,只模拟初始值。如果有人对我的问题有一个真正的答案,请贴出来:)
相关文章:
- 根据所选选项显示/隐藏不同的表单
- HTML 表单字段根据从下拉列表中选择的选项显示/隐藏
- 根据所选选项显示文本
- 禁用浏览器自动选项(显示输入元素中保存的单词)
- 基于所选选项显示asp:TextBox的JavaScript
- 更改选项显示当前时间
- 根据下拉列表中的选定选项显示详细信息
- 如何根据选中的选项显示文本数组
- 根据单独选择的选项显示 HTML 选项
- jQuery不能基于选择选项显示/隐藏元素
- Javascript cookie 用于保存用户首选项并使用共享首选项显示内容
- 根据选择框中的选项显示单选按钮
- 如何在asp.net web应用程序中使用javascript根据下拉列表中选择的选项显示不同的输入类型
- 下拉选项应根据上一个选项显示
- jQuery:根据所选选项显示/隐藏元素
- 选择选项显示/隐藏IE9问题
- 为'
- 我的下拉选项显示按钮时,它不应该'
- 根据选择的选项显示一个Div(带有计算值)——Angular
- 根据带有自定义值属性的选择选项显示图像