【发布时间】:2011-11-03 16:50:18
【问题描述】:
我正在修复一个由其他人编码的网站。代码真的很乱,所以恐怕我不能在这里全部发布,但我相信我提供了足够的信息让你看看可能出了什么问题。因为此时我迷路了。
1.我们得到最小和最大限制
parent_id = '<?php echo $parent_id; ?>';
api = '<?php echo $api; ?>';
$.getJSON('getlimits.php', {'id': ""+parent_id+"", 'api': ""+api+""}, function(data) {
// Loop and assign Json (returned value) to our limit variables
$.each(data, function(key, val) {
min_limit = key;
max_limit = val;
});
});
getlimits.php 输出:
{"10":"15000"}
2。我们检查限制
amount = $('#quantity', this).val();
console.log(amount + ' - Max : ' + max_limit + ' Min : ' + min_limit);
if ( amount < min_limit) {
displayError("You can't order less than " + min_limit + " units",2000);
return false;
}
else if ( amount > max_limit ) {
displayError("You can't order more than " + max_limit + " units.",2000);
return false;
}
记录的结果;
800 - Max : 15000 Min : 10
我输入了 800 个单位。它不应该给出任何错误,但我收到以下错误;
您不能订购超过 15000 个单位。
我真的迷路了。日志显示正确的值,getlimits.php 返回正确的值但 if & else if 条件不起作用。
如果有人能帮我解决这个问题,我会很高兴。
提前谢谢你。
【问题讨论】:
-
您确定每个值都是 int 吗?尝试
parseInt条件前的每个值。
标签: javascript jquery conditional-statements