предупреждение о том, что val () и text () вызываются некорректно - PullRequest
1 голос
/ 26 августа 2010

У меня есть:

 TotalPrice = parseInt(TotalPrice*100)/100;
 $('input[name=EstimatedPrice]').val(TotalPrice);
 $('#EstimatedPriceDisplay').text(TotalPrice);

и я получаю два предупреждения от lint.

  1. val () вызван неправильно

  2. text () вызван неправильно.

Мне удалось устранить текст () неправильно вызвал ошибку, выполнив следующее:

$('#EstimatedPriceDisplay').text('' + TotalPrice);

Но этоМне кажется, это немного глупо.

Ответы [ 4 ]

2 голосов
/ 26 августа 2010

Выполнение:

$('#EstimatedPriceDisplay').text('' + TotalPrice);

должно быть хорошо, или вы можете использовать метод toString:

$('#EstimatedPriceDisplay').text(TotalPrice.toString());
1 голос
/ 26 августа 2010

Поскольку вы повторно используете переменную, я бы сделал ее String при присвоении значения.

TotalPrice = (Math.round(TotalPrice*100)/100) + '';

Таким образом, вам нужно сделать это только один раз, и это не загромождает .val() и .text()

$('input[name=EstimatedPrice]').val(TotalPrice);
$('#EstimatedPriceDisplay').text(TotalPrice);

РЕДАКТИРОВАТЬ: Изменено на Math.round() для получения правильного округления вверх / вниз.

1 голос
/ 26 августа 2010

Хотите ли вы поддерживать IE <5.5? Если нет, попробуйте использовать <a href="http://www.w3schools.com/jsref/jsref_tofixed.asp" rel="nofollow noreferrer"> метод .toFixed() , который возвращает строку и округляется до указанного десятичного знака.

 TotalPrice = TotalPrice.toFixed(2);
0 голосов
/ 26 августа 2010
 $('input[name=EstimatedPrice]').val(TotalPrice.toFixed(2));
 $('#EstimatedPriceDisplay').text(TotalPrice.toFixed(2));
...