在js中怎么让文本框显示的字符变成密码格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在js中怎么让文本框显示的字符变成密码格式相关的知识,希望对你有一定的参考价值。

文本框和密码框都是input元素,只是type属性值不一样,因此只要将type属性由text修改为password即可实现文本框变密码框。示例如下:

1、html结构


<input type="text" id="test" value="请输入密码" onclick="fun(this)">

2、javascript代码


function fun(obj)    obj.value = "";    obj.type = "password";

3、效果演示

参考技术A input 的 type属性设置为password

c# winform 中怎样让一个文本框可以用扫描枪输入,而不能用键盘输入

尝试的方法:

     1.将TextBox属性设为ReadOnly=true。结果:无法输入。

     2.在TextBox的KeyPress事件中设置属性e.handle=true。结果:扫描枪输入时也会触发KeyPress事件,因此也不能输入。

     3.在TextBox的ValueChanged事件中判断结果。结果:扫描枪也是一个一个字符输入,不是一次性将整个条码输入。

     思考:扫描枪其实在输入上与键盘完全相似。但是人工输入和扫描设备输入的区别在于,扫描设备输入速度比较快而且时间间隔比较平均。

     实验:

 解决方法:

        Private DateTime _dt = DateTime.Now;  //定义一个成员函数用于保存每次的时间点
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
       
            DateTime tempDt = DateTime.Now;          //保存按键按下时刻的时间点
            TimeSpan ts = tempDt .Subtract(_dt);     //获取时间间隔
            if (ts.Milliseconds > 50)                           //判断时间间隔,如果时间间隔大于50毫秒,则将TextBox清空
                textBox1.Text = "";
            dt = tempDt ;
       

       至此, 问题解决。

参考技术A 改ReadOnly属性为True;该属性值影响键盘输入,不影响代码输入 参考技术B 用串口扫描枪,读取串口命令。
扫描枪是完全模拟键盘的设备,如果屏蔽按键的话,则将扫描枪一起屏蔽了。所以,建议用串口扫描枪。
参考技术C 设备输入,和键盘手工输入最大的区别楼主想想是什么?是速度。

设计思路:
文本框KEYPRESS事件 。 第1个字符输入到第N个字符,不能超过某个时刻(例如4个字符以上就超过1秒),如果超过1秒文本清空。本回答被提问者采纳
参考技术D 实线onkeydown事件,返回失败就行了。

还有你得考虑到扫描码不清晰,需要手工输入的情况。
事实上,如果是条码,很可能会出现这种情况。二维码没办法。

以上是关于在js中怎么让文本框显示的字符变成密码格式的主要内容,如果未能解决你的问题,请参考以下文章

CSS 怎样让文本框里的字超过字数后,可以缩略显示变成点,当鼠标移上后又会全部显示出来

winform中文本框改为密码框

网页 使用js或jQuery实现 显示的文本变成输入框以供修改

下拉框回显,就是值是数字,但是显示出来是字符串文本

word里怎么让文本框里字体上下居中呢?

在网页中怎样让用户名和密码的文本框左对齐