以element,el-input组件为例: 1.在自定义指钩子函数bind或inserted通过querySelector找到输入框(input标签)dom对象 2.监听input的onkeyup事件,获取输入值,校验并替换输入值,限制输入类型,重新给输入框设值 3.通过compositionstart和compositionend事件设置锁定标识,解决中文输入法双向绑定失效问题 二、代码实现 1.input.js...
那就只能设置type="text"了,但是设置type="text"又会导致input可以输入非数字了,于是网上百度google找的一大堆各种通过js去控制的,比如onkeyup事件等,检测到输入的是非数字就截取掉,替换掉,这能够实现只能输入数字,但是正如标题所说,只允许正整数和正小数,而且还存在字母e和 输入1.1.111...1这种情况,依然通过这些...
<el-input size="medium" class="el-input-style" v-model.trim="inputMony" placeholder="请输入充值金额" :maxlength="inputMaxL" @input="inputMaxL = /^\d+\.?\d{0,1}$/.test(inputMony)? null: inputMony.length - 1" :onkeyup="(inputMony = inputMony.replace(/[^0-9.]/gi, ''))"...
代码如下:<inputonkeydown="if(event.keyCode==13)event.keyCode=9">只能是中文<inputonkeyup="value=value.replace(/[ -~]/g,'')"onkeydown="if(event.keyCode==13)event.keyCode=9">屏蔽输入法<inputstyle="ime-mode:disabled"onkeydown="if(event.keyCode==13)event.keyCode=9">只能输入英文和数字<...