javascript - 如何使用 JavaScript 验证此表单上的邮政编码?

标签 javascript regex postal-code

我对 JavaScript 没有那么丰富的经验,并且我已经尝试了一段时间,让此表单在用户单击提交按钮时以错误的格式输入邮政编码时显示警报消息。到目前为止,我所取得的成就是我将所有内容都放在一个验证所有字段的函数中,我使用名称来引用函数内部的字段。 (抱歉,如果我没有正确缩进)

var g=document.forms["myform"]["postcode"].value;
if (g==null || g=="")
{
    alert("Please enter your Post CODE");
    return false;
}
var regPostcode = /^([a-zA-Z]){1}([0-9][0-9]|[0-9]|[a-zA-Z][0-9]
[a-zA-Z]|[a-zA-Z][0-9][0-9]|[a-zA-Z][0-9]){1}([ ])([0-9][a-zA-z][a-zA-z]){1}$/;
if(regPostcode.test(postcode) == false)
{
    alert("That Post Code is incorrect");
    return false;
}

这是我使用的表单内特定字段的 HTML

<div class=”field_container”><label>Post Code</label><input type=”text” name="postcode" id="postcode" /></div>

最佳答案

假设您的正则表达式对于您所针对的国家/地区来说是正确的,我会尝试这样的操作:

var g = document.forms["myform"]["postcode"].value;
var regPostcode = /^([a-zA-Z]){1}([0-9][0-9]|[0-9]|[a-zA-Z][0-9]
    [a-zA-Z]|[a-zA-Z][0-9][0-9]|[a-zA-Z][0-9]){1}([ ])([0-9][a-zA-z][a-zA-z]){1}$/;
if (!g)
{
    alert("Please enter your Post CODE");
    return false;
}
if (!g.match(regPostcode))
{
    alert("That Post Code is incorrect");
    return false;
}

正如@Shiplu所说,没有统一的正则表达式适用于每个国家的邮政编码。您应该确保您想要阻止居住在其他一些国家/地区的人提交表单。

希望这有帮助。

关于javascript - 如何使用 JavaScript 验证此表单上的邮政编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9344071/

相关文章:

javascript - Zend 框架 : Inserting calls to View Helpers into Javascript code

javascript - 将图像添加到 JavaScript 数组,然后在另一个函数调用中显示它们

javascript - 如何在没有后视的情况下匹配 '+abc' 而不是 '++abc'?

regex - Dreamweaver 用正则表达式替换

PHP - 邮政编码检查是否被覆盖

php - 计算起点半径内位置的最佳方法

Javascript DatePicker 无法运行

javascript - app.post 不工作! "Cannot GET/up"

javascript - 邮政信箱正则表达式验证

c# - WebRequest:如何使用针对此 ContentType ="application/xhtml+xml, text/xml, text/html; charset=utf-8"的 WebRequest 查找邮政编码?