Вопрос по jquery – плагин валидатора jquery - без валидации

0

Я знаю, что это должно быть просто (согласно странице плагина в любом случае)

Но я пытаюсь использовать плагин безуспешно, вот моя форма:

<form id="mongoForm">
        <label for="skip">skip:</label> <input type="text" id="skip"
            style="width: 70px">
        <p />
        limit: <span id="limitLable" style="border: 0">1</span>
        <div id="limit" style="width: 250px"></div>
        <p />
        <label for="collection">collection: </label> <input type="text"
            id="collection">
        <p />
        <label for="sort">sort: </label> <input type="text" id="sort">
        <p />
        <label for="type">type: </label><select id="type">
            <option value="find" selected="selected">find</option>
            <option value="count">count</option>
        </select>
        <p />
        <label for="query">query: </label>
        <textarea rows="10" cols="80" id="query"></textarea>
        <input type="submit" value="execute" id="execute">
    </form>

и мой скрипт jquery:

$(document).ready(function() {
    $.validator.addMethod("validJson", function(value, element) {
        try {
            var val = $.parseJSON(value);
            return true;
        } catch (e) {
            return false;
        }

    }, "Invalid JSON string");
    $("#mongoForm").validate({
        rules : {
            collection : {
                required : true
            },
            query : {
                validJson : true
            }
        },
        submitHandler : function(form) {
            queryServer();
        }
    });

Но проверка не работает. Если я добавлю класс = "обязательный" на входы, он работает для пользовательских проверок, но не для моего пользовательского метода validJson. Но это не решает мою проблему, так как некоторые поля не обязательны, мне просто нужно проверить дополнительные значения

Есть идеи, пожалуйста?

Ваш Ответ

1   ответ
1

общие рекомендации:

The name attribute is required for input elements, the validation plugin doesn't work without it. Usually name and id attributes should have the same value.

поэтому разметка должна быть

<label for="collection">collection:</label> 
<input type="text" id="collection" name="collection">

так далее

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