如何配置Drupal的Better Exposed Filter 6.0.3模块以支持小数输入?
Better Exposed Filter 6.0.3小数输入问题解决办法
针对你遇到的范围最小值、最大值和步长无法输入小数的问题,可按以下步骤排查修复:
先确认目标字段的小数配置
要过滤的数值字段本身得支持小数:进入字段编辑页,检查字段类型是「浮点数」或「小数」,且「小数位数」设置大于0。如果字段是整数类型,BEF自然没法支持小数输入。调整BEF过滤器的表单控件设置
在视图的BEF配置界面找到对应数值范围过滤器:- 把「表单元素类型」改成「文本框」,避免用「整数滑块」这类仅支持整数的控件;
- 如果要用滑块,直接在「步长」里填小数(比如0.1),同时最小值、最大值也输入小数格式,部分版本的滑块默认限制整数,手动输入小数可解除限制。
移除前端输入限制(临时修复)
要是配置都对但还是输不了小数,可能是模块前端JS加了整数验证,可自定义JS解除:// 解除BEF数值输入框的整数限制 document.querySelectorAll('.bef-range-min, .bef-range-max, .bef-range-step').forEach(input => { input.removeAttribute('pattern'); input.inputMode = 'decimal'; input.step = 'any'; });把这段代码加到主题的自定义JS文件,或者通过页面头部的自定义HTML区块插入。
考虑升级模块版本
6.0.3版本可能存在小数输入的已知Bug,去模块的Issue队列查一下,要是有相关修复,在Drupal版本兼容的前提下升级到最新稳定版。

内容的提问来源于stack exchange,提问作者vjprabhakar
相关产品推荐
相关产品推荐

