Здапретить ввод e - + в input type="number"
Здравствуйте, к сожалению я столкнулся с необходимостю запрета ввода знаков +,-,е в input type="number"
Пример рабочего кода <input type="number" onkeydown="return event.keyCode !== 187 && event.keyCode !== 189 && event.keyCode !== 69"> Как можно задать ето-же с помошю функции, тоесть (не рабочий код) <input type="number" onkeydown="typ"> <script> function typ(event){ return event.keyCode !== 187 && event.keyCode !== 189 && event.keyCode !== 69 } </script> Или есть более правильны методы решения проблемы))? |
onkeydown="typ(event)" или addEventListener('keydown', event => { if(event.target.type === 'number' && [187, 189,69].includes(event.keyCode)) event.preventDefault(); }, true) |
К сожалению ето не работает((
<input type="number" onkeydown="typ(event)"> <script> function typ(event){ return event.keyCode !== 187 && event.keyCode !== 189 && event.keyCode !== 69; } </script> -+е всеравно пишется в input |
Ну да.
onkeydown="return typ(event)" |
Спасибо большое, код на js работает
<input type="number" onkeydown="return typ(event)"> <script> function typ(event){ return event.keyCode !== 187 && event.keyCode !== 189 && event.keyCode !== 69; } </script> Могу ли я спросить как можно сделать такую функцыю для vue.js К примеру код vue.js ниже не работает(( <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script> <div id="vue"> <input type="number" @keydown="return tonum(event)"> </div> <script> var vue = new Vue({ el: '#vue', data: { }, methods: { tonum() { return event.keyCode !== 187 && event.keyCode !== 189 && event.keyCode !== 69; } } }) </script> |
Спасибо, все получилось при использовании директив
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script> <div id="vue"> <input type="number" v-num="true" @keydown="return tonum(event)"> </div> <script> Vue.directive('num', function (el) { addEventListener('keydown', event => { if(event.target.type === 'number' && [187, 189,69].includes(event.keyCode)) event.preventDefault(); }, true) }) var vue = new Vue({ el: '#vue', methods: { tonum() { alert("working"); } } }) </script> |
fori,
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script> <div id="vue"> <input type="number" @keydown="tonum"> </div> <script> var vue = new Vue({ el: '#vue', data: { }, methods: { tonum(event) { if([187, 189,69].includes(event.keyCode)) event.preventDefault(); } } }) </script> |
Часовой пояс GMT +3, время: 09:49. |