Создать ответ 
Скрипт перевода текста нескольких полей на транслит
Автор Сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #1
Скрипт перевода текста нескольких полей на транслит
По просьбе наших посетителей, в данной теме мы рассмотрим скрипт, который позволяет переводить на транслит сразу несколько заданных полей.
Данный скрипт основан на уже имеющемся на нашем сайте скрипте перевода текста на транслит.

Код:
<script type='text/javascript'>
function translit(text){
var transl = new Array();
    transl['А']='A';     transl['а']='a';
    transl['Б']='B';     transl['б']='b';
    transl['В']='V';     transl['в']='v';
    transl['Г']='G';     transl['г']='g';
    transl['Д']='D';     transl['д']='d';
    transl['Е']='E';     transl['е']='e';
    transl['Ё']='Yo';    transl['ё']='yo';
    transl['Ж']='Zh';    transl['ж']='zh';
    transl['З']='Z';     transl['з']='z';
    transl['И']='I';     transl['и']='i';
    transl['Й']='J';     transl['й']='j';
    transl['К']='K';     transl['к']='k';
    transl['Л']='L';     transl['л']='l';
    transl['М']='M';     transl['м']='m';
    transl['Н']='N';     transl['н']='n';
    transl['О']='O';     transl['о']='o';
    transl['П']='P';     transl['п']='p';
    transl['Р']='R';     transl['р']='r';
    transl['С']='S';     transl['с']='s';
    transl['Т']='T';     transl['т']='t';
    transl['У']='U';     transl['у']='u';
    transl['Ф']='F';     transl['ф']='f';
    transl['Х']='X';     transl['х']='x';
    transl['Ц']='C';     transl['ц']='c';
    transl['Ч']='Ch';    transl['ч']='ch';
    transl['Ш']='Sh';    transl['ш']='sh';
    transl['Щ']='Shh';    transl['щ']='shh';
    transl['Ъ']='"';     transl['ъ']='"';
    transl['Ы']='Y\'';    transl['ы']='y\'';
    transl['Ь']='\'';    transl['ь']='\'';
    transl['Э']='E\'';    transl['э']='e\'';
    transl['Ю']='Yu';    transl['ю']='yu';
    transl['Я']='Ya';    transl['я']='ya';

    var result = '';
    for(i=0;i<text.length;i++) {
        if(transl[text[i]] != undefined) result += transl[text[i]];
        else result += text[i];
    }
    return result;
}

function send(){
    var in_mass = ["name","surname","first_name"];
    var to_mass = ["name_tr","surname_tr","first_name_tr"];
    for(j=0;j<in_mass.length;j++) {
        var text = document.getElementById(in_mass[j]).value;
        document.getElementById(to_mass[j]).value = translit(text);
    }
}
</script>

<div style="text-align: center;">
<input type="text" id="name"><input type="text" id="surname"><input type="text" id="first_name">
<br>
<input type="text" id="name_tr"><input type="text" id="surname_tr"><input type="text" id="first_name_tr">
<br>
<input type="button" value="В транслит" onclick="send()">
</div>

Как видно из кода, в массиве in_mass = ["name","surname","first_name"]; содержатся id полей, которые требуется перевести на транслит. В массиве to_mass = ["name_tr","surname_tr","first_name_tr"]; содержатся id полей, в которых будет отображен результат преобразования.
23.04.2014 20:07:00
Найти все сообщения Цитировать это сообщение
SerCher Не на форуме
Рядовой
*

Сообщений: 4
У нас с: May 2014
Сообщение: #2
RE: Скрипт перевода текста нескольких полей на транслит
К сожалению, при любом сочетании с (ц) транслитерирует как (cz).
04.05.2014 14:53:21
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #3
RE: Скрипт перевода текста нескольких полей на транслит
Так я же давал ссылку в комментариях на другую тему - Скрипт перевода текста на транслит

Если Вам нужно сделать транслит для нескольких полей, то можно сделать по аналогии с тем скриптом, который я привел в теме по ссылке выше.
04.05.2014 14:59:33
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru