如何针对变量数组检查提交的表单字段的值

时间:2009-07-31 09:17:23

标签: jquery

我有一个简单的邮政编码检查,我要根据预制变量检查提交的值,我怎样才能在Jquery中执行此操作,

  <form method="post" action="#">
     <input name="textfield" type="text" id="textfield" size="8" maxlength="8" />
     <input type="submit" value="submit">
 </form>

我的变量包含B1,B2和B3。

如果输入的邮政编码类似于变量,则发送ok消息,否则将发送无消息。

3 个答案:

答案 0 :(得分:1)

我假设你想检查提交的邮政编码是否部分匹配地区邮政编码列表(如伯明翰地区的B1,B2,B3)

var districtPostcodes = ['B1', 'B2', 'B3','B4'];
$("#submit_postcode").click(function(){
    var userPostcode = $("#postcode").val().replace(/[^a-zA-Z0-9]/gi,'').toUpperCase();
    $.grep(districtPostcodes , function(val, i){
        if(userPostcode.indexOf(val) === 0){
            alert("Users postcode is part of district: "+val)
        }
    })
})

该功能仅匹配以预定义区域开头的邮政编码(仅此后成功输入的邮政编码为 此区域)

我还为你的元素使用了一些id,因为它有意义并提高了代码的清晰度 您可以查看demo here(使用B24EZ作为邮政编码)

答案 1 :(得分:0)

$('form').submit(function(){
   var textfield = $('#textfield').val();
   if ( textfield == B1 || textfield == B2 || textfield == B3){
       alert('ok'); 
       return true;
   }else{
       return false;
   }
});
这样的事情? 你应该给你的表格一个ID。事实上,文档有一个很好的例子:http://docs.jquery.com/Events/submit 编辑:哎呀,没有获得部分内容......请参阅grep的底部示例

答案 2 :(得分:0)

var varArray = [B1,B2,B3];

$('form submit').click(function(){
   var textfield = $('#textfield').val();
   if ( varArray.indexOf(textField) > -1){
      alert('ok'); return true;
    }else{
      return false;
    }
});

那会给你你想要的东西。您可以按照自己认为合适的方式向阵列中添加内容。