0

http://jsfiddle.net/gVVa8/7/

我正在尝试验证 http | https | FTP | 万维网。但似乎无法让它验证 https URL。

任何人都可以帮忙吗?

$(document).ready(function () {
 // Validates  http | https | ftp
 // http://www.cnn.com  | https://www.facebook.com  | ftp://myurl.com  | www.igs.org

    $.validator.addMethod("cus_url", function (value, element) {
        if (value.substr(0, 7) != 'http://') {
            value = 'http://' + value;         
        }

        if (value.substr(value.length - 1, 1) != '/') {
            value = value + '/';
        }

        return this.optional(element) || /^(https|http):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/i.test(value);
    }, "Not valid url.");

    $("#myform").validate({
        ignore: [],
    });

});
4

1 回答 1

1

&& value.substr(0, 8) != 'https://'在您的代码中添加一个,例如:

$.validator.addMethod("cus_url", function (value, element) {
    if (value.substr(0, 7) != 'http://' && value.substr(0, 8) != 'https://') {
        value = 'http://' + value;         
    }

或使用正则表达式:if (!value.match(/^http(s?):\/\//)) 否则你https://www.facebook.com会变成http://https://www.facebook.com

于 2013-06-24T00:18:18.777 回答