从输入值中检索整数值时,jQuery 似乎存在一些剥离问题。
我的代码:
// Control the rating input field to only accept numeric values
// -else set the values back to 0
// For the highest value:
$('.dsListItem .firstItem').keyup(function(){
if (isNumber($(this).val()) && $(this).val() < $('.dsListItem .lastItem').val()) {
console.log('FIRST: ' + $(this).val() + ' >>> ' + $('.dsListItem .lastItem').val());
$(this).val($('.dsListItem .lastItem').val());
}
});
// For the lowest value:
$('.dsListItem .lastItem').keyup(function(){
if (isNumber($(this).val()) && $(this).val() > $('.dsListItem .firstItem').val()) {
console.log('LAST: ' + $(this).val() + ' >>> ' + $('.dsListItem .firstItem').val());
$(this).val($('.dsListItem .firstItem').val());
}
});
Safari Inspector 告诉我:
最后: 11 >>> 10
最后:2 >>> 10
最后:1 >>> 10
只有 0 和 1 有效。如果 10 被验证为“1”,它也不应该通过 1 > 1,但它确实通过了。
我不明白为什么 console.log() 打印显示正确的整数,但是当我用它计算时,10 get 转换为 1。
我尝试用 ($(this).val() * 1) 转换数字,但这并没有改变任何东西,无论如何;该值已被检查为有效的数值。