当用户在文本框中输入内容时,我想要隐藏SSN的前6个字符。像 * - -1234这样的东西 有没有内置标签,我可以做到这一点。提前谢谢。
答案 0 :(得分:1)
标准JSF实现的“内置”组件仅代表标准HTML元素。任何这些HTML元素都不涵盖您的功能需求,因此标准JSF实现也不会包含它。最接近的是由JSF <input type="password">
组件提供的HTML <h:inputSecret>
,但这将掩盖所有字符,而不仅仅是指定的子集。
也没有第三方JSF组件库能够实现这一点。你基本上有两种选择,一种是简单选择,一种是更难选择。
将SSN拆分为两个输入字段。一个<h:inputSecret>
和一个<h:inputText>
。如有必要,添加一些onkeyup
JavaScript帮助程序代码,当输入6个字符时,它会自动标记到下一个字段。在服务器端,只需将两个部分粘合在一起。
使用<h:inputHidden>
作为值,使用普通<input type="text">
和一些onkeydown
JavaScript帮助程序代码填充隐藏的输入,并将屏蔽后的字符返回给可见输入前6个字符。