Javascript-форум (https://javascript.ru/forum/)
-   Работа (https://javascript.ru/forum/job/)
-   -   нужна JS форма, на лету заменять слова по формату (https://javascript.ru/forum/job/60052-nuzhna-js-forma-na-letu-zamenyat-slova-po-formatu.html)

wlad2 09.12.2015 02:33

нужна JS форма, на лету заменять слова по формату
 
нужна форма, на вход которой отправялю чтото похожее на такой текст (текст может быть без запятых) = Россия, Армения, Азербайджан, Беларусь, Кипр, Германия, Эстония, Испания, Финляндия, Франция, Греция, Италия, Казахстан, Латвия, Португалия, Украина

на выходе хочу получить на лету два варианта

1 = RU AM AZ BY CY DE EE ES FI FR GR IT KZ LT PT UA
2 = RU, AM, AZ, BY, CY, DE, EE, ES, FI, FR, GR, IT, KZ, LT, PT, UA


оплата по факту, 200 р на вебмоней/карту/мобилу
пишите в ЛС

Vlasenko Fedor 09.12.2015 04:17

function render(str, data) {
    return str.replace(/([^\u0000-\u007F]+)/g, function (str, key) {
        return data.hasOwnProperty(key) ? data[key]: false;
    });
};

var str = 'Россия, Армения, Азербайджан, Беларусь, Кипр, Германия, Эстония, Испания, Финляндия, Франция, Греция, Италия, Казахстан, Латвия, Португалия, Украина';
var data = {
    Россия: 'RU',
    Армения: 'AM',
    Азербайджан: 'AZ',
    Беларусь: 'BY',
    Кипр: 'CY',
    Германия: 'DE',
    Эстония: 'EE',
    Испания: 'ES',
    Финляндия: 'FI',
    Франция: 'FR',
    Греция: 'GR',
    Италия: 'IT',
    Казахстан: 'KZ',
    Латвия: 'LT',
    Португалия: 'PT',
    Украина: 'UA'
};
alert(render(str, data));

Decode 09.12.2015 04:22

wlad2, на скорую руку. Только в объект countries надо добавить нужные страны.
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    Германия Россия
    <form action="#" id="form">
        <input type="text" />
        <input type="submit" />
    </form>

    <div class="result1"></div>
    <div class="result2"></div>

    <script>
        var countries = {
            'Германия': 'de',
            'Россия': 'ru'
        };

        document.getElementById('form').onsubmit = function() {
            var val = this.elements[0].value.match(/[а-я]+/gi),
                arr = [];

            val.forEach(function(item) {
                countries[item] && arr.push(' ' + countries[item]);
            });

            document.querySelector('.result1').innerHTML = arr;
            document.querySelector('.result2').innerHTML = arr.join('');

            return false;
        };
    </script>
</body>
</html>

wlad2 09.12.2015 19:35

Decode,
спасиб
отправил средства


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