我看了一些旧的帖子,仍然对正在发生的事情感到有点困惑。我有一个发货表单,不允许PO箱,所以我试图找到一个验证器来查看,并确保输入字段中没有PO。我正在确保每个字段都填写了这个代码,但我想知道如何与它合并在邮政信箱验证。注意:这是一个独立于我实际表单的文件
$( document ).ready(
function()
{
$( '#shipping' ).submit(
function()
{
var required_fields = new Array(
'name',
'service',
'company',
'contact',
'street',
'city',
'state',
'zip',
'projectnum'
);
for( j in required_fields )
{
var theRequiredField = required_fields[j]
var inputField = $( '[name="' + theRequiredField + '"]' )
if( inputField.val() == '' )
{
alert( "The '" + theRequiredField + "' field is required." );
inputField.focus();
return false;
}
}
} // function
) // submit
}
); 发布于 2011-04-15 02:10:04
也许有一个更好的方法,但这是我想出来的:
$('input[name=address]').each(function() {
var pattern = new RegExp('[PO.]*\\s?B(ox)?.*\\d+', 'i');
if ($(this).val().match(pattern)) {
$(this).after('<span class="pob">No PO Boxes</span>');
}
});发布于 2016-01-16 17:27:04
我使用了上面由drudge提供的RegEx。它在大多数情况下都有效,但对于"1122 new space -apt.99B1“之类的字符串,它给出了误报。因此,我将RegEx修改为:
var pattern = new RegExp('(P.O.|PO|Box)+\\s?.*\\d+', 'i');这一条检查"P.O.“或" PO“或" Box”字,后跟一个数字以确定其为PO Box地址。
https://stackoverflow.com/questions/5666599
复制相似问题