плагин проверки jQuery - частичная проверка в зависимости от триггера - PullRequest
0 голосов
/ 02 сентября 2010

Я использую плагин проверки jQuery и хотел бы проверить число с плавающей запятой и отформатировать его с указанным числом десятичных знаков.

Я использую

element.value = parseFloat(value).toFixed(param);

дляотформатируйте значение с плавающей запятой, если оно действительно является допустимым значением, я просто хочу делать это только для размытия, а не для keyup, поскольку это дает странные результаты.Я, однако, хочу проверить ввод на keyup.

Я думаю, что я ищу в основном

if( validation was triggered by blur )
{
    element.value = parseFloat(value).toFixed(param);
}

1 Ответ

0 голосов
/ 02 сентября 2010

Плагин проверки jQuery не позволяет вам смешивать подобные правила (я могу ошибаться, возможно, есть вариант сделать это, но эту проблему достаточно легко решить без нее)

Во-первых, для проверки keyup:

$('#float').keyup(function(){
  if(!/[-+]?[0-9]*\.?[0-9]+/.test(this.value)){
    // Do something about the error
  }
});

Вы можете откатить редактирование или отобразить сообщение об ошибке, что угодно. Теперь на blur

$('#float').blur(function(){
  var input = this.value;

  if(/[-+]?[0-9]*\.?[0-9]+/.test(input)){
    this.value = parseFloat(input).toFixed(param);
  }
});

Там все просто.

Примечание: регулярное выражение из http://www.regular -expressions.info / floatingpoint.html

...