jQuery如果值是NaN

我在if语句中遇到了一些麻烦。 我想将num的值设置为0:

$('input').keyup(function() { var tal = $(this).val(); var num = $(this).data('boks'); if(isNaN(tal)) { var tal = 0; } }); 

您必须将值分配回$(this)

 $('input').keyup(function() { var tal = $(this).val(); var num = $(this).data('boks'); if(isNaN(tal)) { var tal = 0; } $(this).data('boks', tal); }); 

写得很好:

 $('input').keyup(function() { var eThis = $(this); var eVal = (isNaN(eThis.val())) ? 0 : eThis.val(); eThis.data('boks', eVal); }); 

如果你想用0代替NaN,只需写下:

 var tal = parseInt($(this).val()) || 0;