Jquery Validator - check input against a list of accepted values

前端 未结 3 1173
情书的邮戳
情书的邮戳 2020-12-10 13:47

I would normally just do this with a drop down list but the client has requested that it be a text input...

Basically, I\'d like to use Jquery validator to check tha

相关标签:
3条回答
  • 2020-12-10 14:17

    Here's a validation method you can add for use with jquery validate

    First you declare a validator:

    jQuery.validator.addMethod("isstate", function(value) {
        var states = [
            "AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "FL", "GA",
            "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD",
            "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ",
            "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC",
            "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY",
            "AS", "DC", "FM", "GU", "MH", "MP", "PR", "PW", "VI"
        ];
        return $.inArray(value.toUpperCase(), states) != -1;
    }, "Data provided is not a valid state");
    

    Then apply the validator

    $("#myform").validate()
    

    and in your form you want to add the class to the form element to check

    <input type="text" value="de" class="isstate" />
    

    Here's a working demo

    0 讨论(0)
  • 2020-12-10 14:17

    Here is a dirty quick solution:

    http://jsfiddle.net/naveed_ahmad/CqXZu/1/

    0 讨论(0)
  • 2020-12-10 14:20

    You could use a change() listener that simply checks the input against your list of valid input strings and only enable submit buttons if you have a match.

    Anyways. For user experience, it is better to show a dropdown selector list of all the possible states. At least that is what I thought first, when I reaad your question.

    Regards,

    Chris

    0 讨论(0)
提交回复
热议问题