如何检查输入的值是否为整数和格式输入?

时间:2019-08-05 20:03:33

标签: javascript jquery html

我有一个只能输入整数值的输入字段。另外,最大字符数为十,包括破折号select ak.aNbr, ak.kNbr, v.cid, coalesce(t.qty, 0) as qty from (select distinct aNbr, kNbr from t) ak cross join (values (0), (1), (2), (3), (4), (5), (6)) v(cid) left join t on t.aNbr = ak.aNbr and t.kNbr = ak.kNbr and t.cid = v.cid order by aNbr, kNbr, CId; aNbr kNbr CId Qty ---- ---- --- --- 6814 77 0 10 |6814 77 1 0 6814 77 2 30 6814 77 3 48 6814 77 4 60 |6814 77 5 0 |6814 77 6 0 |6855 32 0 0 |6855 32 1 0 6855 32 2 20 |6855 32 3 0 |6855 32 4 0 |6855 32 5 0 6855 32 6 30 1768 10 0 0 |1768 10 1 0 |1768 10 2 0 |1768 10 3 0 .... 。用户输入值时,应采用格式。例如,如果用户输入-。该值在输入字段004546671中应如下所示。当用户在尝试输入字母字符或其他任何内容的输入字段中输入值时,则不允许输入该值的整数。这是输入字段的示例:

00-4546671
$("#sys_id").on("keypress", function() {
  var inputFld = $(this);
  
  if( inputFld.val() ) {
    console.log(inputFld.val());
  }
});

是否有一种方法可以防止输入整数以外的其他值?另外,如何应用格式<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input name="sys_id" id="sys_id" maxlength="10" placeholder="00-0000000">

1 个答案:

答案 0 :(得分:2)

为什么不使用本机输入验证?您实际上只需要一个正则表达式来验证输入的数字是整数,并且它们之间用连字符分隔。因此,请允许使用2位数字,连字符和7位数字。

我不是正则表达式专家,所以这是一个非常基本的示例,可能无法涵盖您需要涵盖的所有情况

payload = {
  'start_date': '2019-06-15T00:22:55',
  'end_date': '2019-08-05T19:55:33'
}

payload_str = "&".join("%s=%s" % (k,v) for k,v in payload.items())

r = requests.get(url, params=payload_str)

Input Patterns