Даров народец.. задача состоит в следующем...
1. сздаем страницу с 2 текстовыми полями
2. в одно текст.поле вводим текст на кирилице, нажимаем на кнопку, получаем тот же текст, толЬко на латинице...
ДЛЯ ЭТОГО я решил:
1. создаю 2 массива
cir(кол-во эл-в) = New ARRAY
cir[0]="а"
cir[1]="б"
cir[2]="в"
...........
...........
("ь" "ъ" никак не обозначаю, т.к. сочетания "ль" "къ" "гь" дают нам сочетания "li" "ku" "gi")
.............
lat(кол-во эл-в)= New ARRAY
lat[0]="a"
lat[1]="b"
lat[2]="v"
2. создаю функцю
function cirTolat() {
var a = document.getElementById('area');
if(a) {
var let = a.value.split('');
for(var j = 0; j < let.length; j++) {
if(let[j] != ' ') {
for(var i = 0; i < cirilica.length; i++) {
if(let[j] == cirilica[i]) {
let[j] = latinica[i];
}else if(let){
for(let[j] = ){
a=a.replace(cirilica[k], latinica[k])
}
}
}
document.getElementById('area2').value=let.join('');
}
}
// сочетания "ль" "къ" "гь" неправилЬно переводятца: "lь" "kъ" "gь" вместо "li" "ku" "gi" ну и т.д.
ситуюевину не смог исправить даже с помощю регулярных выражении..
ну никак не поддаетца (я не кодер, но столкнулся с проблемой)..
3 решил сделать по другому, т.е. создать 4 масиива, по принципу 2 массива, допустим cir1 и lat1 у меня содержат односимволЬные элементы, и 2 массива cir2 и lat2 содержат двухсимволЬные эл-ты:
1. создаю 4 массива
cir1(кол-во эл-в) = New ARRAY
cir1[0]="а"
cir1[1]="б"
cir1[2]="в"
...........
...........
...........
lat1(кол-во эл-в)= New ARRAY
lat1[0]="a"
lat1[1]="b"
lat1[2]="v"
cir2(кол-во эл-в) = New ARRAY
cir2[0]="ль"
cir2[1]="къ"
cir2[2]="гь"
...........
...........
...........
lat2(кол-во эл-в)= New ARRAY
lat2[0]="li"
lat2[1]="ku"
lat2[2]="gi"
2. ну и оброботчик-функцию..
function cirTolat() {
var a = document.getElementById('area').value;
if(a) {
for(var k = 1; k < cirilica2.length; k++){
a=a.replace(cirilica2[k], latinica2[k])
for(var k = 0; k < cirilica.length; k++){
a=a.replace(cirilica[k], latinica[k])
}
}
}
document.getElementById('area2').value=a;
}
но и это решение определенно не пашет..
народ поскажите че делать..
1. сздаем страницу с 2 текстовыми полями
2. в одно текст.поле вводим текст на кирилице, нажимаем на кнопку, получаем тот же текст, толЬко на латинице...
ДЛЯ ЭТОГО я решил:
1. создаю 2 массива
cir(кол-во эл-в) = New ARRAY
cir[0]="а"
cir[1]="б"
cir[2]="в"
...........
...........
("ь" "ъ" никак не обозначаю, т.к. сочетания "ль" "къ" "гь" дают нам сочетания "li" "ku" "gi")
.............
lat(кол-во эл-в)= New ARRAY
lat[0]="a"
lat[1]="b"
lat[2]="v"
2. создаю функцю
function cirTolat() {
var a = document.getElementById('area');
if(a) {
var let = a.value.split('');
for(var j = 0; j < let.length; j++) {
if(let[j] != ' ') {
for(var i = 0; i < cirilica.length; i++) {
if(let[j] == cirilica[i]) {
let[j] = latinica[i];
}else if(let){
for(let[j] = ){
a=a.replace(cirilica[k], latinica[k])
}
}
}
document.getElementById('area2').value=let.join('');
}
}
// сочетания "ль" "къ" "гь" неправилЬно переводятца: "lь" "kъ" "gь" вместо "li" "ku" "gi" ну и т.д.
ситуюевину не смог исправить даже с помощю регулярных выражении..
ну никак не поддаетца (я не кодер, но столкнулся с проблемой)..
3 решил сделать по другому, т.е. создать 4 масиива, по принципу 2 массива, допустим cir1 и lat1 у меня содержат односимволЬные элементы, и 2 массива cir2 и lat2 содержат двухсимволЬные эл-ты:
1. создаю 4 массива
cir1(кол-во эл-в) = New ARRAY
cir1[0]="а"
cir1[1]="б"
cir1[2]="в"
...........
...........
...........
lat1(кол-во эл-в)= New ARRAY
lat1[0]="a"
lat1[1]="b"
lat1[2]="v"
cir2(кол-во эл-в) = New ARRAY
cir2[0]="ль"
cir2[1]="къ"
cir2[2]="гь"
...........
...........
...........
lat2(кол-во эл-в)= New ARRAY
lat2[0]="li"
lat2[1]="ku"
lat2[2]="gi"
2. ну и оброботчик-функцию..
function cirTolat() {
var a = document.getElementById('area').value;
if(a) {
for(var k = 1; k < cirilica2.length; k++){
a=a.replace(cirilica2[k], latinica2[k])
for(var k = 0; k < cirilica.length; k++){
a=a.replace(cirilica[k], latinica[k])
}
}
}
document.getElementById('area2').value=a;
}
но и это решение определенно не пашет..
народ поскажите че делать..