我想测试请求参数是否大于12或不是JavaScript。
即使我将q的值更改为12,它也始终将警报“更小”。
当前网址为:www.test.com?id=2
如何在JavaScript中完成?
答案 0 :(得分:2)
您的代码有效。如果它返回true,则它会发出更大的警报。虽然您应该在语句末尾添加分号。你的代码看起来像这样:
var q = 14;
if (q > 10)
alert('greater');
else
alert('Lesser');
如Derek所说,如果q === 10,那么它会警告'较小',因为10不超过10。
编辑:在这里,您有2个选项。使用类似PHP的东西使q等于这样的数字:
q = <?php echo $_GET['id']; ?>
请注意,使用此功能会将您的网站打开到各种XSS,因此如果您决定采用这种方式,请稍微了解安全性,不要急于将其上传到实时网站。
或者,如果您只想使用JavaScript,请按照以下方式执行:
q = location.href.substring(location.href.indexOf('id=')+3); //3 is the length of id=
q = parseInt(q, 10); //With substring, you get a string, so you have to parse it
10是基数参数,避免输入010等输入的奇数(如果没有参数则为8)。
答案 1 :(得分:1)
这对我来说很好看。您可能希望在警报之后包含分号以确保安全。此外,您的测试不会考虑“等于”,因此10将报告“较小”,而实际上它等于。