Плагин проверки jQuery с метаданными на флажках? - PullRequest
0 голосов
/ 07 марта 2012

Я занят плагином проверки и у меня не работает флажки и радиовходы. Так может ли кто-нибудь помочь мне с этим, как я могу заставить его работать? (я надеюсь, что это может быть сделано с метаданными так же, как поле ввода)

Это мой JS:

$(".valid").validate({
    meta: "validate",
    errorPlacement: function(error, element) {
        error.insertAfter(element);
    }
});

И HTML:

<form action="" class="valid">
    <div class="row">
        <label>Name</label>
        <div class="right"><input type="text" value="" name="name" class="{validate:{required:true, messages:{required:'Please enter your name'}}}" /></div>
    </div>
    <div class="row">
        <label>Checkboxes</label>
        <div class="right">
            <input type="checkbox" name="family" value="" id="family_one" checked="checked" class="required">
            <label for="family_one">Check on</label>

            <input type="checkbox" name="family" value="" id="family_two" class="required">
            <label for="family_two">Check off</label>
        </div>
    </div>
    <div class="row">
        <label></label>
        <div class="right">
            <button type="submit"><span>Click me</span></button>
        </div>
    </div>
</form>

Флажки проверки формы HTML:

<div class="right">
    <div class="custom-checkbox"><input type="checkbox" name="family" value="" id="third-check" class="require-one error"><label for="third-check">Check off</label></div>
    <div class="custom-checkbox"><input type="checkbox" name="family" value="" id="fouth-check" class="require-one"><label for="fouth-check">Check off</label></div>
    <div class="custom-checkbox"><input type="checkbox" name="family" value="" id="five-check" class="require-one"><label for="five-check" class="">Check off</label></div>
    <div class="custom-checkbox"><input type="checkbox" name="family" value="" id="six-check" class="require-one">
    <label for="checks" generated="true" class="error">Please check at least one box.</label>
    <label for="six-check">Check off</label></div>
</div>

1 Ответ

1 голос
/ 07 марта 2012

Если вы используете последнюю версию jQuery validate, вам просто нужно добавить класс «required» в теги вашего элемента.

<input type="text" class="required" />

или

<input type="radio" class="required" />

Это подходит для большинства случаев, особенно если вам не требуется функция обратного вызова.

Удачи!

EDIT:

Простой вызов функции проверки с помощью:

$('#idOfForm').validate();

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

Ура!

РЕДАКТИРОВАТЬ 2:

Для флажков попробуйте:

$('#idOfForm').submit(function(e) {
    if($('#family_one').attr('checked') == false) {
        e.preventDefault();
        alert("Please check family one"); //Execute your message here
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...