JQuery URL Validator

13
задан Jake 3 April 2010 в 06:50
поделиться

3 ответа

jQuery validate () предназначен для проверки самой формы, я считаю, а не просто отдельное поле.

Я думаю, вам лучше использовать регулярное выражение для проверки одного текстового поля, если вы не пытаетесь выполнить проверку формы.

Вот пример работающего SO-вопроса.

function validateURL(textval) {
  var urlregex = new RegExp(
        "^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([0-9A-Za-z]+\.)");
  return urlregex.test(textval);
}

Источник: здесь

24
ответ дан 1 December 2019 в 19:59
поделиться

Вы могли бы написать регулярное выражение, как предлагали другие, но глупо делать это самому (зачем изобретать велосипед), и вы, вероятно, не будете делать такую ​​же хорошую работу, как плагин.

Попробуйте:

var isValid = function isValid(form, field){
    return $(form).valid({
      rules: {
        field: {
          required: true,
          url: true
        }
      }
    });    
};

Где форма - это имя формы, а поле - это имя ввода в этой форме. Удалите «required: true», если поле не является обязательным.

Это не было проверено, но на основании документов, на которые вы ссылались в своем вопросе, это должно помочь вам встать на правильный путь.

Также, чтобы не быть придурком, вам действительно стоит более внимательно прочитать документацию ... там есть ответ на ваш вопрос.

2
ответ дан 1 December 2019 в 19:59
поделиться

Почему бы вам просто не попробовать использовать регулярные выражения JavaScript? Вам не нужен целый плагин только для проверки URL! Существует множество регулярных выражений, связанных с синтаксическим анализом URL. Просто сделайте что-нибудь вроде:

if(textval.match(/<regular expression>/)) return true;

Более того, если можно использовать HTML5, он поддерживает , поэтому не нужно вообще беспокоиться о проверке URL-адресов.

2
ответ дан 1 December 2019 в 19:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: