Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Текст в input дублировался в другом input с условием (https://javascript.ru/forum/dom-window/77916-tekst-v-input-dublirovalsya-v-drugom-input-s-usloviem.html)

ekad 02.07.2019 12:14

Текст в input дублировался в другом input с условием
 
Например есть два input

Необходимо при вводе текста в первый input, текст отразился во втором input но с условием.

Например я ввёл: Один Два
Нужно что бы во втором input продублировался: odindva

Вот так дублирую во второй input. Но не могу заменить.

<input id="editbox" name="Текст" value="" placeholder="Введите текст" oninput="document.getElementById('kopiya').value=t his.value;" onkeydown="document.getElementById('kopiya').value =this.value;">

<input id="kopiya">



Спасибо.

ksa 02.07.2019 15:45

Цитата:

Сообщение от ekad
Например я ввёл: Один Два
Нужно что бы во втором input продублировался: odindva

Транслитом?
https://javascript.ru/forum/misc/273...-translit.html

Без пробелов?

ekad 02.07.2019 17:18

<form class="form"> 
<input id="surname" name="surname" type="text" value="" placeholder="" class="form-control input-md" required="required">
<input id="str" name="pagetitle" value="" /> 
</form>

window.addEventListener('DOMContentLoaded', function() {
 var form = document.querySelector('.form');
 form.addEventListener('input', function() {
 form.str.value = form.surname.value
 });
 });


вот новый код, но как к нему подключить функцию (что по ссылке дали) перевода букв и убрать пробелы?

рони 02.07.2019 18:00

ekad,
:-?
form.str.value = transliterate(form.surname.value.replace(/\s/g, "")

Dilettante_Pro 02.07.2019 18:33

Небольшая модификация, чтобы были только мелкие буквы
<form class="form"> 
<input id="surname" name="surname" type="text" value="" placeholder="" class="form-control input-md" required="required">
<input id="str" name="pagetitle" value="" /> 
</form>
<script>
transliterate = (
	function() {
		var
			rus = "щ   ш  ч  ц  ю  я  ё  ж  ъ  ы  э  а б в г д е з и й к л м н о п р с т у ф х ь".split(/ +/g),
			eng = "shh sh ch cz yu ya yo zh `` y' e` a b v g d e z i j k l m n o p r s t u f x `".split(/ +/g)
		;
		return function(text, engToRus) {
			var x;
			for(x = 0; x < rus.length; x++) {
				text = text.split(engToRus ? eng[x] : rus[x]).join(engToRus ? rus[x] : eng[x]);
				 text = text.split(engToRus ? eng[x].toUpperCase() : rus[x].toUpperCase()).join(engToRus ? rus[x].toUpperCase() : eng[x]);	
			}
			return text;
		}
	}
)();
window.addEventListener('DOMContentLoaded', function() {
 var form = document.querySelector('.form');
 form.addEventListener('input', function() {
 form.str.value = transliterate(form.surname.value.replace(/\s/g, ""));

 });
 });
</script>

ekad 03.07.2019 06:12

а как можно еще, кроме пробела, твёрдый знак исключить при переносе во второй input?
чтобы при вводе твёрдого знака во второй input ничего не шло за место этого символа

и как еще можно исключить все символы кроме букв?

ksa 03.07.2019 08:34

ekad, ты сам что-то делать начнешь? :D

ksa 03.07.2019 08:36

Цитата:

Сообщение от ekad
твёрдый знак исключить при переносе во второй input?
...
и как еще можно исключить все символы кроме букв?

Все может сделать
https://javascript.ru/string/replace
А поможет ему
https://javascript.ru/RegExp

ekad 03.07.2019 16:57

я просто очень тупой, мнеб глянуть как выглядит рабочий вариант, так бы понял

рони 03.07.2019 17:15

Цитата:

Сообщение от ekad
кроме пробела, твёрдый знак

Цитата:

Сообщение от ekad
мнеб глянуть как выглядит рабочий вариант

Цитата:

Сообщение от Dilettante_Pro
value.replace(/\s/g, "")

Цитата:

[xyz] Набор символов. Находит любой из перечисленных символов.
/[\sъ]/g


Часовой пояс GMT +3, время: 11:50.