скрипт подмены числа, нужна помощь

Тема в разделе "Другие языки", создана пользователем Gragdanin, 11 дек 2009.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. Gragdanin

    Gragdanin Создатель

    Регистр.:
    11 авг 2008
    Сообщения:
    12
    Симпатии:
    0
    Есть скрипт такого вида (см. ниже)
    он приплюсовывает к числу, обрамлённому в <span id='1'> </span> заданную сумму. Работает корректно с числами в котрых разделитель - точка (11.11), но если число вида ( 11,11.11 ), то есть с запятой, то скрипт работает с числом только до запятой.
    Как добавить поддержку работы с запятой?
    HTML:
    <script language="javascript">
    function SuperCalc(sid,plus)
    {
        var ch="1234567890";
        var ch1="";
        var chBefore="";
        var chPost="";
        var chEnd = 0;
        var obj = document.getElementById(sid);
        if ( obj != null )
        {
            mas = obj.innerHTML.split("");
            for ( i = 0; i < mas.length; i++ )
            {
                if ( !chEnd && ch.indexOf(mas[i]) > -1 )
                {
                    ch1 = ch1.concat( mas[i] );
                    if ( ch.indexOf(mas[i+1])<0) chEnd=true;
                }
                else if (!chEnd) chBefore=chBefore.concat(mas[i]);
                else if (chEnd) chPost=chPost.concat(mas[i]);
            }
            if (ch1!="") ch1=(ch1/1)+(plus/1);
            document.getElementById(sid).innerHTML=chBefore+ch1+chPost;
        }
    }
    SuperCalc('1', 2000 );
    </script>
     
  2. RolCom

    RolCom

    Регистр.:
    12 мар 2008
    Сообщения:
    351
    Симпатии:
    108
    Еще бы - по правилам id-шник состоит из символов [-a-zA-Z0-9_.:] и должен начинаться с буквы. Именуйте свои id-шники правильно.
     
    Gragdanin нравится это.
  3. Ponochka

    Ponochka Постоялец

    Регистр.:
    21 фев 2008
    Сообщения:
    128
    Симпатии:
    13
    делать замену запятой на точку, как будто в переменной не число а строка.

    ch1.replace(",", ".");
     
Статус темы:
Закрыта.