KeyFilter 是 InputText 的内置功能,可根据正则表达式限制用户输入。
import { InputText } from 'primereact/inputtext';
KeyFilter 提供了使用 keyfilter 属性配置的各种预设。
<InputText keyfilter="int" />
<InputText keyfilter="pint" />
<InputText keyfilter="num" />
<InputText keyfilter="pnum" />
<InputText keyfilter="money" />
<InputText keyfilter="hex" />
<InputText keyfilter="alpha" />
<InputText keyfilter="alphanum" />
<InputText keyfilter="email" />
除了预设之外,还可以配置正则表达式来定制阻止单次按键。
<InputText keyfilter={/[^s]/} />
<InputText keyfilter={/^[^<>*!]+$/} />
除了预设之外,还可以使用正则表达式,使用 validateOnly 来验证整个单词。
<InputText id="numkeys" keyfilter={/^[+]?(d{1,12})?$/} validateOnly onInput={validateInput} />
请参阅 InputText 以了解可访问性,因为 KeyFilter 是 InputText 的内置附加组件。