繁体   English   中英

jQuery 大于和小于检查

[英]jQuery Greater than and Smaller than check

这是我的表格:

<form class="fms-quote-form" action="https://web.com/quotes" method="get">
<input name="wpf126904_18" id="fms-zip" type="number" placeholder="Enter your Zipcode">
<input type="submit" value="Get My Rates">
</form>

这我的jQuery的,这不是工作:

$('.fms-quote-form').submit(function() {

if ( $('#fms-zip').val() >= 90000 AND <=96162 ) {
  return true;
} else {
    window.open('https://smartfinancial.com/auto-insurance-rates', '_blank');
    return false;
  }
});

我如何 (i) 检查 #fms-zip 的值是否大于 90000 且小于 96162 以提交表单,以及 (ii) 如果输入了任何其他值,则将用户重定向到另一个网站?

期待您的意见:)

始终检查错误控制台 - 您假设语法有问题。 AND会抛出错误 - 你需要&&

更重要的是,您不能只指定较高的数字并假设 JavaScript 会知道将它与您比较较低值的同一主题值进行比较 - 您必须重复主题。

let val = parseInt($('#fms-zip').val());
if (val >= 90000 && val <= 96162 ) { //<-- note 2 references to @val

正如@Alessio Cantarella 指出的那样,您还需要将该值转换为一个数字——读取该字段的值会返回一个字符串。

要检查 ZIP 是否大于 90000 且小于 96162,您需要使用:

 $(function() { $('.fms-quote-form').submit(function() { let zip = parseInt($('#fms-zip').val()); let isZipValid = zip >= 90000 && zip <= 96162; if (isZipValid) { return true; } else { window.open('https://smartfinancial.com/auto-insurance-rates', '_blank'); return false; } }); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form class="fms-quote-form" action="https://web.com/quotes" method="get"> <input name="wpf126904_18" id="fms-zip" type="number" placeholder="Enter your Zipcode"> <input type="submit" value="Get My Rates"> </form>

你可以这样试试——

$(function() {
  $('.fms-quote-form').submit(function() {
    var valueZip= parseInt($('#fms-zip').val());

    if (valueZip >= 90000 && valueZip <= 96162) {
      return true;
    } else {
      window.open('https://smartfinancial.com/auto-insurance-rates', '_blank');
      return false;
    }
  });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM