<script type="text/javascript">
function translit()
{
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
var ereg = '';
var txt = document.getElementById('text'); //id тега textarea
var txtvar = txt.value;
for (var k in arr)
{
eval('ereg = /'+ k +'/g;');
txtvar = txtvar.replace(ereg, arr[k]);
}
txt.value = txtvar;
}
</script>
Сам в ОЫ не селен. Поэтому рассказываю как знаю. Скрипт принимает латиницу и по функции onblur вот тут
<input type="text" id="text" onblur="translit()" />
переводит ее в латиницу. Но прошу помощи, в том что бы можно было сделать так. 2 поля. В одно вводишь название на кириллице, а во втором по onblur оно уже формируется на латиницу. без перезагрузки страницы. Спасибо все кто поможет!
Спустя 1 час, 50 минут, 13 секунд (7.04.2011 - 15:49) Mirexzpalich написал(а):
<script type="text/javascript">
function translit()
{
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
var ereg = '';
var txt = document.getElementById('text'); //id первого поля, куда вводишь
var txt2 = document.getElementById('text2');//id второго поля, куда выводишь
var txtvar = txt.value;
for (var k in arr)
{
eval('ereg = /'+ k +'/g;');
txtvar = txtvar.replace(ereg, arr[k]);
}
txt2.value = txtvar;
}
</script>
Спустя 1 час, 11 минут, 57 секунд (7.04.2011 - 17:01) m4a1fox написал(а):
Mirexzpalich
Не получается Ваш вариант!
Не получается Ваш вариант!
Спустя 19 минут, 16 секунд (7.04.2011 - 17:20) Mirexzpalich написал(а):
А мона посмотреть HTML код, собсна ту часть где находятся эти эл-ты ввода и вывода?
Спустя 1 минута, 56 секунд (7.04.2011 - 17:22) m4a1fox написал(а):
Mirexzpalich
Конечно! нет проблемы
Конечно! нет проблемы
<script type="text/javascript">
function translit()
{
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
var ereg = '';
var txt = document.getElementById('text'); //id первого поля, куда вводишь
var txt2 = document.getElementById('text2');//id второго поля, куда выводишь
var txtvar = txt.value;
for (var k in arr)
{
eval('ereg = /'+ k +'/g;');
txtvar = txtvar.replace(ereg, arr[k]);
}
txt2.value = txtvar;
}
</script>
<input type="text" id="text"/>
<input type="text" id="text2" onkeyup="translit()"/>
Спустя 3 минуты, 26 секунд (7.04.2011 - 17:25) Mirexzpalich написал(а):
<input type="text" id="text"/>
<input type="text" id="text2" onkeyup="translit()"/>
Так событие-то надо вызывать в том input где пишем по-русски
<input type="text" id="text" onkeyup="translit()"/>
<input type="text" id="text2" />
Тобишь пишешь в text а перевод у тебя будет в text2
Спустя 3 минуты, 3 секунды (7.04.2011 - 17:28) m4a1fox написал(а):
Mirexzpalich
Вот так сделал....
Тем не менее не работает!
Вот так сделал....
<script type="text/javascript">
function translit()
{
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
var ereg = '';
var txt = document.getElementById('text'); //id первого поля, куда вводишь
var txt2 = document.getElementById('text2');//id второго поля, куда выводишь
var txtvar = txt.value;
for (var k in arr)
{
eval('ereg = /'+ k +'/g;');
txtvar = txtvar.replace(ereg, arr[k]);
}
txt2.value = txtvar;
}
</script>
<input type="text" id="text" onkeyup="translit()"/>
<input type="text" id="text2"/>
Тем не менее не работает!
Спустя 2 минуты, 23 секунды (7.04.2011 - 17:31) m4a1fox написал(а):
m4a1fox
Выводит... только то что и пишешь в первом input. То есть сам скрипт не срабатывает.
Выводит... только то что и пишешь в первом input. То есть сам скрипт не срабатывает.
Спустя 44 секунды (7.04.2011 - 17:31) m4a1fox написал(а):
Mirexzpalich
Да, это весь код страницы.
Да, это весь код страницы.
Спустя 1 минута, 24 секунды (7.04.2011 - 17:33) Mirexzpalich написал(а):
Жжжеешь чувак =)
там где написано //и так для всех символов
нужно добавлять типа
в:v,
г:g,
......
Понял?
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
там где написано //и так для всех символов
нужно добавлять типа
в:v,
г:g,
......
Понял?
Спустя 3 минуты (7.04.2011 - 17:36) m4a1fox написал(а):
Mirexzpalich
Ну так я проверяю на буквах --а-- и --я--. Один эффект.
Ну так я проверяю на буквах --а-- и --я--. Один эффект.
Спустя 3 минуты, 53 секунды (7.04.2011 - 17:40) Mirexzpalich написал(а):
кодировка страницы какая?
Спустя 6 минут (7.04.2011 - 17:46) m4a1fox написал(а):
utf8
Спустя 1 минута, 24 секунды (7.04.2011 - 17:47) Mirexzpalich написал(а):
<script type="text/javascript">
function translit()
{
var arr =
{
'а':'a',
'б':'b',
'и':'i',
'ш':'sh',
'я':'ya'
//и так для всех символов
};
var ereg = '';
var txt = document.getElementById('text'); //id первого поля, куда вводишь
var txt2 = document.getElementById('text2');//id второго поля, куда выводишь
var txtvar = txt.value;
for (var key in arr)
{
txtvar = txtvar.replace(key, arr[key]);
}
txt2.value = txtvar;
}
</script>
<input type="text" id="text" onkeyup="translit()"/>
<input type="text" id="text2"/>
Спустя 8 минут, 51 секунда (7.04.2011 - 17:56) m4a1fox написал(а):
Mirexzpalich
Опять тоже самое... то что вводишь в первое поле (в моем случае это буквы --а-- и --я--), то во втором поле - эти же буквы и выводятся.
Опять тоже самое... то что вводишь в первое поле (в моем случае это буквы --а-- и --я--), то во втором поле - эти же буквы и выводятся.
Спустя 2 минуты, 24 секунды (7.04.2011 - 17:58) Mirexzpalich написал(а):
попробуй в cp1251
Спустя 9 минут, 45 секунд (7.04.2011 - 18:08) m4a1fox написал(а):
Mirexzpalich
Да, спасибо. Заработало. Я изначально ошибся. Мета таг с кодировкой забал поставить, вот все и в cp1251 выдавал, а я был уверен, что там utf8. Но теперь разобрался. Спасибо еще раз.
Да, спасибо. Заработало. Я изначально ошибся. Мета таг с кодировкой забал поставить, вот все и в cp1251 выдавал, а я был уверен, что там utf8. Но теперь разобрался. Спасибо еще раз.