Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с NaN (https://javascript.ru/forum/misc/40418-problema-s-nan.html)

katalizator 04.08.2013 20:51

Проблема с NaN
 
Привет.
Подскажите пожалуйста, где может быть проблема. Есть такой участок кода:

<td>
<input 
type="text" 
id="'.$select['id'].'" 
name="'.$select['id'].'" 
value="'.$select['number'].'">
</td>

<td>
<input 
type="text" 
id="id_'.$select['id'].'" 
name="id_'.$select['id'].'"
 onkeyup="document.getElementById(\''.id_$select['id'].'\').innerHTML = (parseFloat(this.value)||0) * document.getElementById(\''.$select['id'].'\');f();">
</td>


результат - NaN

Подскажите пожалуйста, где ошибка создающая не числовой результат?

dmitriymar 04.08.2013 21:01

Цитата:

Сообщение от katalizator
где ошибка создающая не числовой результат

хм, что то новое ....
alert(typeof NaN);


посмотрите что при каких условиях результат получается NаN при вычислениях -информации в гугле море

katalizator 04.08.2013 21:05

Цитата:

Сообщение от dmitriymar (Сообщение 265830)
alert(typeof NaN);

не понял ответ...
Поясните если не сложно :)

dmitriymar 04.08.2013 21:09

Цитата:

Сообщение от katalizator
не понял ответ...
Поясните если не сложно

NaN это числовой тип.

alert(parseFloat('1'));

alert(parseFloat('1ррррр'));


alert(parseFloat('_1'));


alert(1*"a");


alert(1*"1");

alert(1*"_1");

alert("1"*"2");


alert("1"*"2прр");

katalizator 04.08.2013 21:12

Цитата:

Сообщение от dmitriymar (Сообщение 265830)
посмотрите что при каких условиях результат получается NаN при вычислениях -информации в гугле море

в моём примере оба перемножаемых значения - числовые. Я неправильно выразился. с JS не сильно знаком ибо больше с php работаю.
так вот в моём случае при перемножении этих значений получается результат NaN, вместо цифры

dmitriymar 04.08.2013 21:14

Цитата:

Сообщение от katalizator
так вот в моём случае при перемножении этих значений получается результат NaN, вместо цифры

быть такого не может, если они начинаются с цифры, и состоят только из цифр. см. примеры в пред. посте и без разницы числовые они или строчные

dmitriymar 04.08.2013 21:20

a
Цитата:

Сообщение от katalizator
document.getElementById(\''.$select['id'].'\')

возвращает ссылку на НТМЛ элемент а не его содержимое


Часовой пояс GMT +3, время: 13:46.