Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 08.10.2016, 21:59
Интересующийся
Отправить личное сообщение для MrSmitt Посмотреть профиль Найти все сообщения от MrSmitt
 
Регистрация: 28.07.2016
Сообщений: 16

Rise,
Не могу понять где следует парсить текст , а не заменять запятую на точку.
$('form').on('submit', function (e) {
        e.preventDefault();
        $('output').generateTable({
                cols: parseInt($('#cols', this).val())+1,
                add: 'html'
            }).find("tr:odd ")
            .each(function (indx, tr) {
                var minMax = [7, 1];
                $('td', tr).click(function () {
                    var text = $(this).text(),
                        varX = $("<input/>", {
                            "value": text,
                            "click": function (event) {
                                event.stopPropagation()
                            },
                            "blur": function () {
                                var val = +this.value || 0 ;
                                if (val < 0 || val > minMax[indx] ) {
                                    alert("Диапазон от 0 до 7 ");
                                    val = text;
                                };
                                $(this).parent().html(val)
                            }
                        });
                    $(this).html(varX);
                    varX.setCursorPosition(text.length)
 
                });
            });
    });
Ответить с цитированием
  #22 (permalink)  
Старый 08.10.2016, 22:01
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,661

MrSmitt, parseInt на parseFloatExt
Ответить с цитированием
  #23 (permalink)  
Старый 08.10.2016, 22:26
Интересующийся
Отправить личное сообщение для MrSmitt Посмотреть профиль Найти все сообщения от MrSmitt
 
Регистрация: 28.07.2016
Сообщений: 16

Rise,
Решил,дать возможность вводить запятую (не меняя на точку). Написал parseFloat в 4 строке. Получаю 0 при вводе запятой.
Изменил непонятную строку 17 на
var val = +this.value

получил NaN


UPD: не менял parseInt. Строку #17 поменял на
var val =parseFloatExt(this.value) ;

и получил замену запятой на точку.

Последний раз редактировалось MrSmitt, 08.10.2016 в 22:44.
Ответить с цитированием
  #24 (permalink)  
Старый 08.10.2016, 22:49
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,661

MrSmitt, синтаксис js - точка в числах, отсюда NaN (Not-a-Number) - не число.
Ответить с цитированием
  #25 (permalink)  
Старый 08.10.2016, 22:57
Интересующийся
Отправить личное сообщение для MrSmitt Посмотреть профиль Найти все сообщения от MrSmitt
 
Регистрация: 28.07.2016
Сообщений: 16

Rise,
а что всё таки делает строка ?
var val = + this.value || 0 ;
Ответить с цитированием
  #26 (permalink)  
Старый 08.10.2016, 23:01
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,661

MrSmitt, если value не число то 0

Последний раз редактировалось Rise, 08.10.2016 в 23:05.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по ширине ячеек таблицы demoniqus Общие вопросы Javascript 4 02.02.2014 13:19
Заполнение таблицы Hisot Элементы интерфейса 33 15.07.2013 21:16
Подсветка родительских ячеек таблицы Demath Элементы интерфейса 10 11.02.2013 14:33
IE 8: баг при динамическом display=none; у ячеек таблицы SegaMega Элементы интерфейса 0 21.09.2012 06:47
Не выводится содержимое ячеек таблицы SER Events/DOM/Window 2 23.06.2011 17:48