Замена строки
Есть инпут, туда пишутся номера частей.
Задача исправить ошибки в инпуте. К примеру: 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:51. |