Замена строки
Есть инпут, туда пишутся номера частей.
Задача исправить ошибки в инпуте. К примеру: NA108 заменить на TUR-NA108 NA-150 заменить на TUR-NA150 NG058 заменить на TUR-NG058 |
Sav2907,
Какие проблемы? Что не получается? Цитата:
|
Dilettante_Pro,
Незнаю как это сделать, нужно искать например букву А, и если она есть, то убрать все буквы, и заменить их на TUR-NA |
Как упростить?
<script> $('.apl').on('blur', function(){ var str = $('.apl').val(); if(str.match(/[A]/gim)){ a = str.replace(/[^0-9]/g,''); $('.res').html('TUR-NA' + a); } if(str.match(/[G]/gim)){ a = str.replace(/[^0-9]/g,''); $('.res').html('TUR-NG' + a); } if(str.match(/[F]/gim)){ a = str.replace(/[^0-9]/g,''); $('.res').html('TUR-NF' + a); } if(str.match(/[H]/gim)){ a = str.replace(/[^0-9]/g,''); $('.res').html('TUR-NH' + a); } }); </script> |
Sav2907,
А почему бы не искать "TUR-" ? |
Sav2907,
А чтобы наверняка исключить ошибки, вместо input лучше сделать select с допустимыми вариантами |
Вариант раз https://jsfiddle.net/Politonius/27Lv010L/
Вариант два с удалением дефиса https://jsfiddle.net/Politonius/27Lv010L/1/ <form action="" method="post"> <input type="text" id="test"> </form> <div id="result"></div> <script> var input = document.getElementById('test'); var result = document.getElementById('result'); input.onkeyup = input.oncopy = input.onpaste = input.oncut = (function() { return function() { var mytest = this.value.substr(0,4); var count = this.value.length; if(count > 4){ if(mytest == "TUR-"){ result.innerHTML = this.value; }else{ result.innerHTML = "TUR-" + this.value; } } } })(); </script> |
w3schools,
Спасибо, переделал так https://jsfiddle.net/27Lv010L/2/ |
Часовой пояс GMT +3, время: 02:01. |