Дождитесь новой строки и посчитайте - PullRequest
0 голосов
/ 03 марта 2012

Моя функция выглядит так

function count() {
   var value =  ids.val();
    return (value == '') ? 0 : value.split(/\r\n|\r|\n/).filter($.trim).map($.trim).length;
}

Есть одна проблема. У меня есть функция автопост, которая проверяет count() каждые 1 сек.

if(count() === 10){ ajaxpost! } 

Считыватель штрих-кода вводит цифры одну за другой: он добавляет новую строку после каждого сканирования.

Как изменить эту функцию для ожидания новой строки и подсчета?

Например

8

Функция должна возвращать 0 (в настоящее время она возвращает 1 сразу после ввода любого значения)

8
<newline>

Функция должна возвращать 1

Ответы [ 2 ]

0 голосов
/ 03 марта 2012

На самом деле вы можете изменить сканер штрих-кода, чтобы не выдавать новую строку, но в противном случае вы можете использовать замену и удаление новых строк.что-то вроде

myStr.replace(/[\r\n]/,'')

РЕДАКТИРОВАТЬ позвольте мне объяснить лучше:

return (value == '') ? 0 : value.split(/\r\n|\r|\n/).filter($.trim).map($.trim).replace(/[\r\n]/,'').length;

Это удалит новые строки s у вас не будет

8
<newline>
0 голосов
/ 03 марта 2012
function count() {
   var value =  ids.val();
   if(!value)
       return 0;
   var len = value.split(/\r\n|\r|\n/).filter($.trim).map($.trim).length;
   return len < 10 ? 0 : len;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...