当用户从Select2 V4组件中选择一个项目时,组件会显示该项目,用户无法更改此值。如果用户想要修改活动项并输入修改后的文本,则Select2会假定它是一个新值并将其添加到列表中。这是坏的。如何更改当前有效值并将其放入选定项目?
答案 0 :(得分:0)
我相信你想要做的就是听select2:selecting
事件:
$('#mySelect').on('select2:selecting', function(e) {
// Do stuff here
});
在您的事件处理程序中,您可以删除添加的项目(或阻止添加项目......我自己也没有尝试过)并更改用户的选择。见https://select2.github.io/examples.html#events
请注意:您要做的不是选择框的标准行为。标准HTML select
会以用户输入的字母开头跳转到下一个option
。如果您要改变这种行为,您可能会发现自己有许多不满意的用户(请参阅principle of least surprise/astonishment)。