Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.04.2015, 20:36
Аспирант
Отправить личное сообщение для _Eldar_ Посмотреть профиль Найти все сообщения от _Eldar_
 
Регистрация: 22.02.2015
Сообщений: 74

ява-скрипт округление чисел после запятой
1.36363636364<br><table><tr><td>Число</td><td>129.36363636364</td><td>3.3643534564</td><td >56.818181818182</td></tr></table>
помогите с ява-скриптом - чтобы длинные числа на странице после точки округлял до тысячных (убирал-удалял-скрывал числа идущие после третьей цифры после точки)

Последний раз редактировалось _Eldar_, 02.04.2015 в 20:39.
Ответить с цитированием
  #2 (permalink)  
Старый 02.04.2015, 20:44
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

document.body.innerHTML = document.body.innerHTML.replace(/(\d+\.\d{3})\d+/gm, '$1');
Ответить с цитированием
  #3 (permalink)  
Старый 02.04.2015, 20:50
Аспирант
Отправить личное сообщение для _Eldar_ Посмотреть профиль Найти все сообщения от _Eldar_
 
Регистрация: 22.02.2015
Сообщений: 74

спасибо
Ответить с цитированием
  #4 (permalink)  
Старый 02.04.2015, 22:10
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

Только если на странице есть любые другие скрипты - вышеприведённый всё сломает.)
Ruslan_xDD, не стыдно тебе такой ужас писать?)
__________________
29375, 35
Ответить с цитированием
  #5 (permalink)  
Старый 02.04.2015, 22:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

_Eldar_,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
   $('td').text(function(i, str) {
   return +str ? (+str).toFixed(3):str;
})
});
  </script>
</head>

<body>
<table><tr><td>Число</td><td>129.36363636364</td><td>3.3643534564</td><td >56.818181818182</td></tr></table>


</body>

</html>
Ответить с цитированием
  #6 (permalink)  
Старый 02.04.2015, 22:40
Аспирант
Отправить личное сообщение для _Eldar_ Посмотреть профиль Найти все сообщения от _Eldar_
 
Регистрация: 22.02.2015
Сообщений: 74

уважаемый рони - а если еще цифры вне table - тогда как?
Ответить с цитированием
  #7 (permalink)  
Старый 02.04.2015, 22:52
Кандидат Javascript-наук
Отправить личное сообщение для soltx Посмотреть профиль Найти все сообщения от soltx
 
Регистрация: 19.05.2013
Сообщений: 144

как вариант указать новый селектор $('td') <----- # . elements ... (jQuery)
Ответить с цитированием
  #8 (permalink)  
Старый 02.04.2015, 22:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

_Eldar_,
добавить те элементы в которых есть цифры -- вариант конечно для цифр без текста - но что вы дали то получили
Ответить с цитированием
  #9 (permalink)  
Старый 02.04.2015, 23:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

_Eldar_,
найдёт всех и пристрелит округлит
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
    $(function() {
    $("*").contents().filter(function() {
        return 3 == this.nodeType
    }).each(function() {
        var a = this.data;
        this.data =  a.replace(/\d+\.\d+/g, function(a) {
            return (+a).toFixed(3)
        })
    })
});
  </script>
</head>

<body>
<table  id="msgFlash"><tr><td>Число</td><td>129.36363636364</td><td>3.3643534564</td><td >56.818181818182</td></tr></table>
всякая фигня 123.456789

</body>

</html>
Ответить с цитированием
  #10 (permalink)  
Старый 03.04.2015, 07:56
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Aetae, не-а, на всей странице же. Если бы автор привёл нормальный пример, где показывается в каких именно тэгах нужно применить данную операцию, то пожалуйста. А так по всем тэгам на странице пробегаться тоже рукожопие.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Округление до нужного количества знаков после запятой Shurik_ Общие вопросы Javascript 29 01.03.2020 03:35
После первого действия скрипт перестает работать cyberx jQuery 6 12.06.2010 22:04
Точность вычисления чисел с плавающей запятой Mihas2 Общие вопросы Javascript 2 19.01.2010 16:32
Как запустить скрипт после отработки другого скрипта? roman2 Общие вопросы Javascript 2 10.08.2009 01:23
Корректное округление вещественных чисел Бобр Общие вопросы Javascript 16 14.01.2009 18:21