element的el-input,想要输入表单的时候只输入范围数字
1 2 3 4 5 6 7 8 9 10 11 12 | <el-form-item label= "通过门限:" prop= "passRate" > <el-input placeholder= "请输入" type= "number" @input= "oninput($event)" clearable v-model= "addReviewForm.passRate" maxlength= "30" > <template #append>%</template> </el-input> </el-form-item> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | const oninput = (val: any) => { let value: any = "" ; if (val) { if (Number(val.replace(/[^\d]+/g, "" )) > 100) { value = 100; } else if (Number(val.replace(/[^\d]+/g, "" )) == 0) { value = 1; } else { value = Number(val.replace(/[^\d]+/g, "" )); } //value = Number(val.replace(/[^\d]+/g, "")) > 100 ? 100 : Number(val.replace(/[^\d]+/g, "")); } addReviewForm.value.passRate = value; }; |
下面这行css可以把原生input的type=number右边难看的上下按钮隐藏
<style> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { appearance: none !important; } </style>
eg:只能输入1-100的正整数
这样就可以解决问题了
隐含的坑点:网上之前查的解决方案,比如在这个输入框里面进行中文输入->负数,再输入其他的输入框,再回来进行中文输入->负数,提交时候这个表单字段的值会显示为' “空字符串,有问题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-07-20 一篇文章看懂hook的useContext,useReducer,useMemo
2021-07-20 react的hook之useReducer