2013-03-27 4 views
0

Я использую JQuery Validation Plugin 1.8.1 для проверки формы, моя проблема заключается в ее не работает должным образомJQuery плагин проверки не работает нормально

в этом HTML код

<input name="Mobile" type="text" class="Input" id="Mobile" placeholder="Type your mobile number" value="<?php echo $activeUser->getMobile();?>" required="true" number="true" /> 

required="true" работает нормально, но number="true" не работает

пожалуйста, помогите мне решить эту благодаря

+0

какой плагин вы используете? Можете ли вы указать URL-адрес плагина? – Natrium

+0

Просьба предоставить информацию о плагине – Horst

+0

Вы используете http://jquery.bassistance.de/validate/demo/ плагин? – Shin

ответ

0

Ваш HTML код раскладывается для проверки HTML 5 ...

<input name="Mobile" type="text" class="Input" id="Mobile" 
placeholder="Type your mobile number" value="" required="true" number="true" /> 

Это не было бы никаких проблем для более обновленной версии (например, 1.11.0) плагина JQuery Validate ,

Работа DEMO: http://jsfiddle.net/5rPGv/2/

Однако, ваш же код сломана при использовании версии 1.8.0 плагина JQuery Validate.

Разбитое: http://jsfiddle.net/5rPGv/1/


Чтобы исправить код, у вас есть только два варианта:

1) обновить плагин JQuery Validate к более поздней версии.

ИЛИ

2) Объявить свои правила в .validate(), с любой версией. http://jsfiddle.net/5rPGv/3/

$(document).ready(function() { 

    $('#myform').validate({ 
     rules: { 
      Mobile: { 
       required: true, 
       number: true 
      } 
     } 
    }); 

}); 
0

Добавить additional-methods.js на свою страницу. У вас должен быть метод проверки mobileUK. Попробуйте использовать:

<input name="Mobile" type="text" class="Input" id="Mobile" placeholder="Type your mobile number" value="<?php echo $activeUser->getMobile();?>" required="true" mobileUK="true" /> 

EDIT

Если HTML версия не работает попробуйте установить, что с JS:

$("#myform").validate({ 
    rules: { 
    field: { 
     required: true, 
     mobileUK: true 
    } 
    } 
}); 

Вы можете создать свой собственный тип проверки. Пример: http://docs.jquery.com/Plugins/Validation/CustomMethods/phoneUS

jQuery.validator.addMethod("phoneUS", function(phone_number, element) { 
    phone_number = phone_number.replace(/\s+/g, ""); 
    return this.optional(element) || phone_number.length > 9 && 
     phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/); 
}, "Please specify a valid phone number"); 

$("#myform").validate({ 
    rules: { 
    field: { 
     required: true, 
     phoneUS: true 
    } 
    } 
}); 
Смежные вопросы